Matplotlib(Matrix plot library)——绘制数据图表的 Python 库
在线安装:
pip install matplotlib -i https://pypi.douban.com/simple/
matplotlib(matrix plot library)是Python 2D 绘图领域应用最广泛的套件之一。主要做数据可视化图表,名字取材于MATLAB,模仿MATLAB构建。
matplotlib.pyplot 是一个命令风格函数的集合,各种状态跨函数调用保存,提供:折线图、散点图、柱状图、直方图、饼图等多种图像的绘制。
注意:图形里默认是不显示中文字体需添加两行代码让其显示中文字体
plt.rcParams['font.sans-serif'] = 'SimHei' plt.rcParams['axes.unicode_minus'] = False # 设置正常显示符号1、绘图大体分为3个结构:创建画布、绘制图形、显示图形
import matplotlib.pyplot as plt # 如果图形里有中文需添加 plt.rcParams['font.sans-serif'] = 'SimHei' plt.rcParams['axes.unicode_minus'] = False # 设置正常显示符号 #创建画布 plt.figure() #添加折线图 plt.plot([1,0,9],[4,5,6]) #显示图形 plt.show()
2、绘图的具体流程:
①创建画布
②添加标题
③x轴 名称、范围、刻度
④y轴 名称、范围、刻度
⑤绘制图像
⑥添加图例
⑦保存图像
⑧显示图像
#例子: plt.figure(num='图形',facecolor='red',edgecolor='blue')# 创建画布 plt.title('lines')# 添加标题plt.xlabel('x')#添加x轴的名称 plt.ylabel('y')#添加y轴名称 plt.xlim((0,10))#确定x轴范围 plt.ylim((4,6))#确定y轴范围 plt.xticks([0,2,4,6,8,10])#确定x轴刻度 plt.yticks([4.0,4.5,5.0,5.5,6.0])#确定y轴刻度 plt.plot([1,0,9],[4,5,6])#添加折线图 plt.legend('Example 1')#添加图例 plt.grid(alpha=0.5)#添加网格# plt.savefig('1.png')#保存图片 plt.show()#显示图片
1、折线图
折线图(line chart)是一种将数据点按照顺序连接起来的图形。
折线图的主要功能是查看因变量y随着自变量x改变的趋势,最适合用于显示随时间(根据常用比例设置)而变化的连续数据。同时还可以看出数量的差异,增长趋势的变化。
matplotlib.pyplot.plot(*args, **kwargs)主要参数:
参数名称解释取值x,yx轴、y轴数据x、y元素个数相同color线条颜色可取CSS颜色:英文、#FFFFFFlinestyle线条类型可取“-”实线、“--”长虚线、“-.”点线、“:”短虚线4种,默认为“-”linewidth线条宽度取0~10之间的数值,默认为1.5marker线条上点的形状可取“o”“D”“h”“.”“,”“S”等20种markersize点的大小取0-10之间的数值,默认为1。alpha点的透明度接收0-1的小数。默认为None。2、散点图
散点图(scatter diagram)又称为散点分布图,是以一个特征为横坐标,另一个特征为纵坐标,利用坐标点(散点)的分布形态反映特征间的统计关系的一种图形。
值是由点在图表中的位置表示,类别是由图表中的不同标记表示,通常用于比较跨类别的数据。
matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, alpha=None, **kwargs)常用参数:
参数名称说明x,y表示x轴和y轴对应的数据。无默认。s指定点的大小,默认为None。c指定点的颜色,默认为Nonemarker表示绘制的点的类型,默认为None。alpha接收0-1的小数。表示点的透明度。默认为None。3、柱状图
柱状图,又称长条图,是一种以长方形的长度为变量的统计图表。柱状图用来比较两个或以上的价值(不同时间或者不同条件),只有一个变量,通常应用于较小的数据集分析。
matplotlib.pyplot.bar(x,height,width = 0.8,color= None, ** kwargs )常用参数:
参数名称说明x表示x轴数据。无默认。height表示x轴所代表数据的数量。无默认。width接收0-1之间的float。指定柱状图宽度。默认为0.8。color表示柱状图颜色。默认为None。4、直方图
饼图(Pie Graph)是将各项的大小与各项总和的比例显示在一张“饼”中,以“饼”的大小来确定每一项的占比。
饼图可以比较清楚地反映出部分与部分、部分与整体之间的比例关系,易于显示每组数据相对于总数的大小,而且显现方式直观。
matplotlib.pyplot.hist(x,bins=None,normed=None, ** kwargs )常用参数:
参数名称说明x表示数据。无默认。bins直方图的组数,可选项,默认为10。normed是否将得到的直方图向量归一化(频率)。默认为False。5、饼图
饼图(Pie Graph)是将各项的大小与各项总和的比例显示在一张“饼”中,以“饼”的大小来确定每一项的占比
饼图可以比较清楚地反映出部分与部分、部分与整体之间的比例关系,易于显示每组数据相对于总数的大小,而且显现方式直观。
matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None)常用参数:
参数名称说明x表示用于绘制数据。无默认。labels指定每一项的名称。默认为None。colors表示饼图颜色。默认为None。autopct指定数值的显示方式。默认为None。explode表示指定项离饼图圆心距离。默认为None。绘图的主体部分可以添加标题,坐标轴名称,绘制图形等步骤是并列的,没有先后顺序,可以先绘制图形,也可以先添加各类标签。但是添加图例一定要在绘制图形之后。
函数名称函数作用plt.xticks()指定x轴刻度的数目与取值,可以设置rotation参数指定旋转度数。plt.yticks()指定y轴刻度的数目与取值,可以设置rotation参数指定旋转度数。plt.grid(linestyle,alpha)设置网格,可以指定网格线的风格、透明度plt.title()在当前图形中添加标题,可以指定标题的名称、位置、颜色、字体大小等参数。plt.xlabel()在当前图形中添加x轴名称,可以指定位置、颜色、字体大小等参数。plt.ylabel()在当前图形中添加y轴名称,可以指定位置、颜色、字体大小等参数。plt.xlim()指定当前图形x轴的范围,只能确定一个数值区间,而无法使用字符串标识。plt.ylim()指定当前图形y轴的范围,只能确定一个数值区间,而无法使用字符串标识。plt.legend()指定当前图形的图例,可以指定图例的大小、位置、标签。六、保存和显示图形
函数名称函数作用plt.savefig()保存绘制的图片,指定路径。plt.show()在本机显示图形。