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使用opencv进行人脸识别
Apr 07 Python
PyQt实现界面翻转切换效果
Apr 20 Python
python写入已存在的excel数据实例
May 03 Python
对Python3.x版本print函数左右对齐详解
Dec 22 Python
解决新版Pycharm中Matplotlib图像不在弹出独立的显示窗口问题
Jan 15 Python
详解Django+uwsgi+Nginx上线最佳实战
Mar 14 Python
Python Pandas 箱线图的实现
Jul 23 Python
如何基于Python创建目录文件夹
Dec 31 Python
tf.concat中axis的含义与使用详解
Feb 07 Python
jupyter notebook 写代码自动补全的实现
Nov 02 Python
Python实战之实现康威生命游戏
Apr 26 Python
python实现简单的聊天小程序
Jul 07 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
php将远程图片保存到本地服务器的实现代码
2015/08/03 PHP
thinkphp实现图片上传功能
2016/01/13 PHP
PHP使用pear实现mail发送功能 windows环境下配置pear
2016/04/15 PHP
ThinkPHP3.1.x修改成功与失败跳转页面的方法
2017/09/29 PHP
一个可绑定数据源的jQuery数据表格插件
2010/07/17 Javascript
基于JQUERY的两个ListBox子项互相调整的实现代码
2011/05/07 Javascript
S2SH整合JQuery+Ajax实现登录验证功能实现代码
2013/01/30 Javascript
非常漂亮的JS+CSS图片幻灯切换特效
2013/11/20 Javascript
Nodejs学习item【入门手上】
2016/05/05 NodeJs
js两种拼接字符串的简单方法(必看)
2016/09/02 Javascript
基于JavaScript实现百度搜索框效果
2020/06/28 Javascript
使用JS和canvas实现gif动图的停止和播放代码
2017/09/01 Javascript
详解用函数式编程对JavaScript进行断舍离
2017/09/18 Javascript
使用Ajax和Jquery配合数据库实现下拉框的二级联动的示例
2018/01/25 jQuery
记一次vue去除#问题处理经过小结
2019/01/24 Javascript
详解vue的双向绑定原理及实现
2019/05/05 Javascript
vue回到顶部监听滚动事件详解
2019/08/02 Javascript
VUE写一个简单的表格实例
2019/08/06 Javascript
layer父页获取弹出层输入框里面的值方法
2019/09/02 Javascript
[03:42]2014DOTA2西雅图国际邀请赛 Navi战队巡礼
2014/07/07 DOTA
[01:07:20]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第二场 2月2日
2021/03/11 DOTA
Python开发之基于模板匹配的信用卡数字识别功能
2020/01/13 Python
通过Turtle库在Python中绘制一个鼠年福鼠
2020/02/03 Python
台湾屈臣氏网路商店:Watsons台湾
2020/12/29 全球购物
HttpServlet类中的主要方法都有哪些?各自的作用是什么?
2014/03/16 面试题
论文指导教师评语
2014/04/28 职场文书
领导党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
终止或解除劳动合同及劳动关系的证明书
2014/10/06 职场文书
六年级学生期末评语
2014/12/26 职场文书
冬季作息时间调整通知
2015/04/24 职场文书
通知书大全
2015/04/27 职场文书
地道战观后感
2015/06/04 职场文书
优秀党员主要事迹范文
2015/11/05 职场文书
2016年秋季运动会加油稿
2015/12/21 职场文书
初二物理教学反思
2016/02/19 职场文书
redis配置文件中常用配置详解
2021/04/14 Redis