- 什么是Matplotlib
Matplotlib是一个Python 2D绘图库,它可以在各种平台上以各种硬拷贝格式和交互式环境生成出具有出版品质的图形。Matplotlib可用于Python脚本,Python和IPython shell,Jupyter笔记本,Web应用程序服务器和四个图形用户界面工具包。
Matplotlib试图让简单的事情变得更简单,让无法实现的事情变得可能实现。只需几行代码即可生成绘图,直方图,功率图,条形图,错误图,散点图等。
为了简单绘图,pyplot模块提供了类似于MATLAB的界面,特别是与IPython结合使用时。对于高级用户,可以通过面向对象的界面或MATLAB用户熟悉的一组函数完全控制线条样式,字体属性,轴属性等。
- 为什么要学习Matplotlib
可视化是整个数据分析中关键的辅助工具,可以清晰的理解数据,从而调整我们的分析方法。
- 能将数据可视化,更直观的呈现,使数据更加客观、更具有说服力。
-
常见图形
-
折线图:以折线的上升或下降来表示统计数量的增减变化的统计图
特点:能够显示数据的变化趋势,反映事物的变化情况。
-
散点图:用两组数据构成多个坐标点,考察坐标点的分布,判断两变量之间是否存在某种关联或总结坐标点的分布模式。
特点:判断变量之间是否存在数量关联趋势,离群点(分布规律)
-
柱状图:排列在工作表的列或行中的数据可以绘制在柱状图中。
特点:绘制的数据能够一眼看出各个数据的大小,比较数据间的差异。(统计/对比)
-
直方图:由一系列高度不等的纵向条纹或线段表示数据的分布情况。一般用横轴表示数据范围,纵轴表示分布情况。
特点:绘制连续性的数据展示一组或多组数据的分布状况(统计)
-
饼图:用于表示不同分类的占比情况,通过弧度大小来对比各类数据。
特点:分类数据的占比情况统计(分类)
-
Matplotlib画图的简单实现
import matplotlib.pyplot as plt # 导入模块
plt.plot([1, 3, 5], [8, 7, 9]) # 传入x和y轴数据,通过plot画图
plt.show() # 展示数据
-
对Matplotlib图像结构的认识
通常情况下我们可以将matplotlib图像分为三层结构:
- 底层的容器层:主要包括Canvas(画板)、Figure(画布、图片)、Axes(图表); 一个axes代表一个图表,包含一个plot,一个figure代表一张画布绘制一张图片,一张图片或一张画布可以有多个图表;canvas画板,摆放画布的工具。关系:画板--->画布或图片-->线条、饼图等图片
- 辅助显示层:主要包括Axis坐标轴、Spines、Tick、Grid、Legend、Title等,该层可通过set_axis_off()或set_frame_on(False)等方法设置不显示;
- 图像层:即通过plot、contour、scatter等方法绘制的图像。