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实现字典(dict)和字符串(string)的相互转换方法
Mar 01 Python
Python中生成Epoch的方法
Apr 26 Python
pandas.dataframe中根据条件获取元素所在的位置方法(索引)
Jun 07 Python
使用TensorFlow实现SVM
Sep 06 Python
python实现对任意大小图片均匀切割的示例
Dec 05 Python
python将txt文件读取为字典的示例
Dec 22 Python
django富文本编辑器的实现示例
Apr 10 Python
python实现五子棋游戏
Jun 18 Python
Python字符串处理的8招秘籍(小结)
Aug 13 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
Aug 15 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
Oct 20 Python
Python 线程池模块之多线程操作代码
May 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
PHP动态创建Web站点的方法
2011/08/14 PHP
PHP会话处理的10个函数
2015/08/11 PHP
基础的WordPress插件制作教程
2015/11/24 PHP
讲解WordPress中用于获取评论模板和搜索表单的PHP函数
2015/12/28 PHP
PHP微信公众号开发之微信红包实现方法分析
2017/07/14 PHP
stream.js 一个很小、完全独立的Javascript类库
2011/10/28 Javascript
利用JavaScript检测CPU使用率自己写的
2014/03/22 Javascript
React.js入门学习第一篇
2016/03/30 Javascript
jquery实现下拉框功能效果【实例代码】
2016/05/06 Javascript
JS碰撞运动实现方法详解
2016/12/15 Javascript
详解基于Bootstrap+angular的一个豆瓣电影app
2017/06/26 Javascript
浅谈mvvm-simple双向绑定简单实现
2018/04/18 Javascript
JavaScript实现浅拷贝与深拷贝的方法分析
2018/07/05 Javascript
jQuery实现滑动星星评分效果(每日分享)
2019/11/13 jQuery
[03:59]第二届DOTA2亚洲邀请赛选手传记-VGJ.rOtk
2017/04/03 DOTA
[55:45]LGD vs OG 2019国际邀请赛淘汰赛 胜者组 BO3 第三场 8.24
2019/09/10 DOTA
Pyhthon中使用compileall模块编译源文件为pyc文件
2015/04/28 Python
python实现向ppt文件里插入新幻灯片页面的方法
2015/04/28 Python
Python爬虫爬取美剧网站的实现代码
2016/09/03 Python
python3实现跳一跳点击跳跃
2018/01/08 Python
Python装饰器原理与用法分析
2018/04/30 Python
使用Python微信库itchat获得好友和群组已撤回的消息
2018/06/24 Python
python利用requests库模拟post请求时json的使用教程
2018/12/07 Python
python的scipy实现插值的示例代码
2019/11/12 Python
有关Tensorflow梯度下降常用的优化方法分享
2020/02/04 Python
python使用pyecharts库画地图数据可视化的实现
2020/03/25 Python
使用 css3 实现圆形进度条的示例
2017/07/05 HTML / CSS
phpquery中文手册
2021/03/18 PHP
写好自荐信的技巧
2013/11/08 职场文书
求职信标题怎么写
2014/05/26 职场文书
小区门卫的岗位职责
2014/09/26 职场文书
2014年小学安全工作总结
2014/12/04 职场文书
2015年植树节活动总结
2015/02/06 职场文书
导游词之河北滦平金山岭长城
2019/10/16 职场文书
golang三种设计模式之简单工厂、方法工厂和抽象工厂
2022/04/10 Golang
Navicat Premium自定义 sql 标签的创建方式
2022/09/23 数据库