Python 数据可视化之Matplotlib详解


Posted in Python onNovember 02, 2021

在深入研究这些库之前,首先,我们需要一个数据库来绘制数据。我们将在本完整教程中使用 tips database。让我们讨论一下这个数据库的简介。

使用的数据库

tips 数据库

tips 数据库是20世纪90年代初期顾客在餐厅的两个半月的小费记录。它包含 6 列,例如 total_bill、tip、sex、smoker、day、time、size。

您可以从这里下载 tips 数据库

例子:

import pandas as pd

# 读取数据库
data = pd.read_csv("tips.csv")
# 打印前 10 行
print(data.head(10))

输出:

Python 数据可视化之Matplotlib详解

Matplotlib

Matplotlib 是一个易于使用的低级数据可视化库,它构建在 NumPy 数组上。它由散点图、线图、直方图等各种图组成。 Matplotlib 提供了很大的灵活性。

要安装此库,请在终端中输入以下命令。

pip install matplotlib

Python 数据可视化之Matplotlib详解

安装 Matplotlib 后,让我们看看使用这个库最常用的绘图。

散点图

散点图用于观察变量之间的关系,并用点来表示它们之间的关系。matplotlib 库中的scatter()方法用于绘制散点图。

例子:

import pandas as pd
import matplotlib.pyplot as plt

# 读取数据库
data = pd.read_csv("tips.csv")
# day 对 tip 的散点图
plt.scatter(data['day'], data['tip'])
# 为 Plot 添加标题
plt.title("Scatter Plot")
# 设置 X 和 Y 标签
plt.xlabel('Day')
plt.ylabel('Tip')
plt.show()

输出:

Python 数据可视化之Matplotlib详解

如果我们可以添加颜色并更改点的大小,则此图会更有意义。我们可以通过分别使用 scatter 函数的c 和 s参数来做到这一点。我们还可以使用colorbar()方法显示颜色条。

import pandas as pd
import matplotlib.pyplot as plt

# 读取数据库
data = pd.read_csv("tips.csv")
# day对tip的散点图
plt.scatter(data['day'], data['tip'], c=data['size'],
			s=data['total_bill'])
# 为Plot添加标题
plt.title("Scatter Plot")
# 设置 X 和 Y 标签
plt.xlabel('Day')
plt.ylabel('Tip')
plt.colorbar()
plt.show()

Python 数据可视化之Matplotlib详解

折线图

折线图用于表示不同轴上两个数据 X 和 Y 之间的关系。它是使用plot() 函数绘制的。让我们看看下面的例子。

例子:

import pandas as pd
import matplotlib.pyplot as plt

# 读取数据库
data = pd.read_csv("tips.csv")
# day对tip的折线图
plt.plot(data['tip'])
plt.plot(data['size'])
# 为Plot添加标题
plt.title("Scatter Plot")
# 设置 X 和 Y 标签
plt.xlabel('Day')
plt.ylabel('Tip')
plt.show()

输出:

Python 数据可视化之Matplotlib详解

条形图

柱状图或叫条形图是表示与长度和高度的矩形条数据的类别是正比于它们所代表的值的图。它可以使用bar()方法创建。

例子:

import pandas as pd
import matplotlib.pyplot as plt

# 读取数据库
data = pd.read_csv("tips.csv")
# day对tip的条形图
plt.bar(data['day'], data['tip'])
plt.title("Bar Chart")
# 设置 X 和 Y 标签
plt.xlabel('Day')
plt.ylabel('Tip')
# 添加图例
plt.show()

输出:

Python 数据可视化之Matplotlib详解

直方图

直方图基本上是用来在一些基团的形式来表示数据。它是一种条形图,其中 X 轴表示 bin 范围,而 Y 轴提供有关频率的信息。的HIST()函数用于计算和创建直方图。在直方图中,如果我们传递分类数据,那么它将自动计算该数据的频率,即每个值出现的频率。

例子:

import pandas as pd
import matplotlib.pyplot as plt

# 读取数据库
data = pd.read_csv("tips.csv")
# total_bill直方图
plt.hist(data['total_bill'])
plt.title("Histogram")
# 添加图例
plt.show()

输出:

Python 数据可视化之Matplotlib详解

以上是关于 Matplotlib 使用 Python 进行数据可视化的全部示例,下一节我们来谈谈 Seaborn

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注三水点靠木的更多内容!

Python 相关文章推荐
python基础教程之python消息摘要算法使用示例
Feb 10 Python
python基础教程之lambda表达式使用方法
Feb 12 Python
如何准确判断请求是搜索引擎爬虫(蜘蛛)发出的请求
Oct 13 Python
Python 逐行分割大txt文件的方法
Oct 10 Python
python机器学习库常用汇总
Nov 15 Python
可能是最全面的 Python 字符串拼接总结【收藏】
Jul 09 Python
python 批量修改/替换数据的实例
Jul 25 Python
浅析Python 读取图像文件的性能对比
Mar 07 Python
python每天定时运行某程序代码
Aug 16 Python
Python yield生成器和return对比代码实例
Apr 20 Python
python爬取豆瓣电影排行榜(requests)的示例代码
Feb 18 Python
Keras保存模型并载入模型继续训练的实现
Feb 20 Python
分位数回归模型quantile regeression应用详解及示例教程
Python常遇到的错误和异常
Nov 02 #Python
Python 数据可视化之Seaborn详解
关于python中模块和重载的问题
pandas中对文本类型数据的处理小结
Nov 01 #Python
Python游戏开发实例之graphics实现AI五子棋
Python Django获取URL中的数据详解
Nov 01 #Python
You might like
跟我学小偷程序之成功偷取首页(第三天)
2006/10/09 PHP
php 时间计算问题小结
2009/01/04 PHP
简化php模板页面中分页代码的解析
2009/02/06 PHP
PHP多线程编程之管道通信实例分析
2015/03/07 PHP
thinkPHP框架实现多表查询的方法
2018/06/14 PHP
jscript之Read an Excel Spreadsheet
2007/06/13 Javascript
jquery中获取元素的几种方式小结
2011/07/05 Javascript
jquery仿京东导航/仿淘宝商城左侧分类导航下拉菜单效果
2013/04/24 Javascript
javascript闭包的高级使用方法实例
2013/07/04 Javascript
JavaScript中的getDay()方法使用详解
2015/06/09 Javascript
jQuery实现宽屏图片轮播实例教程
2015/11/24 Javascript
bootstrap-table实现服务器分页的示例 (spring 后台)
2017/09/01 Javascript
简单介绍react redux的中间件的使用
2018/04/06 Javascript
react中实现搜索结果中关键词高亮显示
2018/07/31 Javascript
微信小程序多音频播放进度条问题
2018/08/28 Javascript
ng-events类似ionic中Events的angular全局事件
2018/09/05 Javascript
angularjs获取到My97DatePicker选中的值方法
2018/10/02 Javascript
使用vue实现各类弹出框组件
2019/07/03 Javascript
用云开发Cloudbase实现小程序多图片内容安全监测的代码详解
2020/06/07 Javascript
Vue单页面应用中实现Markdown渲染
2021/02/14 Vue.js
wxPython中listbox用法实例详解
2015/06/01 Python
Python实现的大数据分析操作系统日志功能示例
2019/02/11 Python
python读取txt文件并取其某一列数据的示例
2019/02/19 Python
pycharm新建一个python工程步骤
2019/07/16 Python
python程序中的线程操作 concurrent模块使用详解
2019/09/23 Python
python实现飞机大战小游戏
2019/11/08 Python
基于Python中的yield表达式介绍
2019/11/19 Python
CSS3实现内凹圆角的实例代码
2017/05/04 HTML / CSS
Java里面有没有全局变量?为什么?
2015/02/06 面试题
客户代表实习人员自我鉴定
2013/09/27 职场文书
2015年幼儿园毕业感言
2014/02/12 职场文书
汽车销售员如何做职业生涯规划
2014/02/16 职场文书
安全教育感言
2014/03/04 职场文书
学习十八届四中全会依法治国心得体会
2014/11/03 职场文书
装修安全责任协议书
2016/03/22 职场文书
SQL使用复合索引实现数据库查询的优化
2022/05/25 SQL Server