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实现分析apache和nginx日志文件并输出访客ip列表的方法
Apr 04 Python
python3.5实现socket通讯示例(TCP)
Feb 07 Python
flask使用session保存登录状态及拦截未登录请求代码
Jan 19 Python
python DataFrame 修改列的顺序实例
Apr 10 Python
详解python3中的真值测试
Aug 13 Python
用python生成(动态彩色)二维码的方法(使用myqr库实现)
Jun 24 Python
python中的数组赋值与拷贝的区别详解
Nov 26 Python
python 爬取马蜂窝景点翻页文字评论的实现
Jan 20 Python
python中线程和进程有何区别
Jun 17 Python
Python RabbitMQ实现简单的进程间通信示例
Jul 02 Python
Python基于Webhook实现github自动化部署
Nov 28 Python
Python语法学习之进程的创建与常用方法详解
Apr 08 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获取本周,上周,本月,上月,本季度日期的代码
2009/08/05 PHP
php中利用post传递字符串重定向的实现代码
2011/04/21 PHP
php动态生成函数示例
2014/03/21 PHP
php reset() 函数指针指向数组中的第一个元素并输出实例代码
2016/11/21 PHP
Thinkphp5.0自动生成模块及目录的方法详解
2017/04/17 PHP
thinkPHP3.2.3实现阿里大于短信验证的方法
2018/06/06 PHP
克隆javascript对象的三个方法小结
2011/01/12 Javascript
疯狂Jquery第一天(Jquery学习笔记)
2012/05/11 Javascript
使用js获取地址栏中传递的值
2013/07/02 Javascript
简单的js表单验证函数
2013/10/28 Javascript
JS数组的遍历方式for循环与for...in
2014/07/31 Javascript
详解Bootstrap创建表单的三种格式(一)
2016/01/04 Javascript
jQuery toggle 代替方法
2016/03/22 Javascript
详解JavaScript实现设计模式中的适配器模式的方法
2016/05/18 Javascript
解析NodeJs的调试方法
2016/12/11 NodeJs
11个教程中不常被提及的JavaScript小技巧(推荐)
2019/04/17 Javascript
如何利用vue+vue-router+elementUI实现简易通讯录
2019/05/13 Javascript
Nuxt.js实战和配置详解
2019/08/05 Javascript
js布局实现单选按钮控件
2020/01/17 Javascript
jquery实现垂直手风琴菜单
2020/03/04 jQuery
JS Array.from()将伪数组转换成数组的方法示例
2020/03/23 Javascript
[03:40]DOTA2亚洲邀请赛小组赛第二日 赛事回顾
2015/01/31 DOTA
python如何在终端里面显示一张图片
2016/08/17 Python
TensorFlow实现模型评估
2018/09/07 Python
python实现自动登录后台管理系统
2018/10/18 Python
python 划分数据集为训练集和测试集的方法
2018/12/11 Python
简单了解python反射机制的一些知识
2019/07/13 Python
Python上下文管理器用法及实例解析
2019/11/11 Python
解决在keras中使用model.save()函数保存模型失败的问题
2020/05/21 Python
Python基于Twilio及腾讯云实现国际国内短信接口
2020/06/18 Python
H5新属性audio音频和video视频的控制详解(推荐)
2016/12/09 HTML / CSS
严选全球尖货,立足香港:Bonpont宝盆
2018/07/24 全球购物
女士鞋子、包包和服装在线,第一款10美元:ShoeDazzle
2019/07/26 全球购物
阿拉伯时尚购物网站:Nisnass
2021/02/07 全球购物
如何高效率的查找一个月以内的数据
2012/04/15 面试题
学生实习自我鉴定
2013/10/11 职场文书