数据可视化在机器学习和数据科学中是很重要的组成部分。在数据分析阶段,数据可视化能够帮助我们理解洞察数据间关系;在算法调试阶段,数据可视化能够发现问题,优化算法;在项目总结阶段,数据可视化能够展示项目成果。
Matplotlib是绘制图表的第三方库,可以快速方便地生成高质量的图表,包括直方图,柱形图,散点图,气泡图,折线图,三维图等。
●安装Matplotlib库
Anaconda :安装了anaconda之后,Matplotlib就已经被安装好了
pip安装(如果使用其他Python程序)
pip install matplotlib
●导入Matplotlib库中的pyplot子库(这里为方便使用使用plt作为前缀)
import matplotlib.pyplot as plt
在pyplot中使用figure对象进行画图,他相当于一张画布,因此需要先创建对象
figure( num,figsize,dpi,facecolor,edgecolor,frameon)
★num :图形编号(数字)或名称(字符串),取值为数字/字符串
★figsize : 绘图对象的宽和高,单位为英寸
★dpi :绘图对象的分辨率,缺省值为80
★facecolor :背景颜色。
★edgecolor :边框颜色。
★frameon :表示是否显示边框。
●Figure对象-一划 分子图
subplot(行数,列数,子图序号)
●设置中文字体(中文)
plt.rcParams [" font.sans-serif" ] = "SimHei"
●恢复标准默认配置
plt.rcdefaults( )
●添加标题
★添加全局标题
suptitle (标题文字)
★添加子标题
title (标题文字)
注意:为避免重叠,使用tight_ layout()函数,其作用是检查坐标轴标签、刻度标签、和子图标题,自动调整子图,使之填充整个绘图区域,并消除子图之间的重叠。
●散点图(Scatter)是数据点在直角坐标系中的分布图,用来分析原始数据分布的规律以及数据变化的趋势。同时还可以数据分组,指的是在散点图中可以通过不同的颜色来划分组别。
★scatter( )函数
scatter( x, y, scale, color, marker, label)
★设置字体
★根据需要生成坐标(例如:标准正态分布)
n=1024
x = np.random.normal(0,1,n)
y = np.random.normal(0,1,n)
★绘制散点图
plt.scatter(x, y, color="blue",marker='*')
★设置标题
plt.title("标准正态分布",fontsize=20)
★text()函数,添加文字
text( x, y, s, fontsize,color )
★坐标轴设置
为消除坐标因中文出现负号添加如下函数
plt.rcParams[" axes.unicode minus"] = False
xlabel( x, y, s, fontsize,color) 设置x轴标签
ylabel( x, y, s, fontsize,color)设置y轴标签
xlim(xmin, xmax)设置x轴坐标的范围
ylim(ymin, ymax)设置y轴坐标的范围
tick_ params(labelsize)设置刻度文字的字号
★增加图例
scatter( x, y, scale, color, marker, label)|
legend(loc, fontsize)
●例子
import matplotlib. pyplot as plt
import numpy as np
plt . rcParams['font.sans-serif']=" SimHei"
plt. rcParams ' axes.unicode_minus']=False
n =1024
x1=np.random.normal(0,1,n)
y1=np.random.norma1(0,1,n)
x2=np.random.uniform(-4,4,(1,n))
y2=np.random.uniform(-4,4,(1,n))
plt.scatter(x1,y1,color="blue",marker=家,label="正态分布" )
plt.scatter(x2,y2,color= "yellow",marker='o',label="均匀分布" )
p1t.legend( )
p1t.title("标准正态分布,fontsize=20 )
plt.xlim()
plt.ylim()
●折线图(Line Chart) 其实是散点图的基础上,将相邻的点用线段相连接。通过plot()函数绘制。
plot( x, y, color, marker, label, linewidth, markersize)
●柱状图(Bar Chart)是由一系列高度不等的柱形条纹表示数据分布的情况。
bar( left, height, width, facecolor, edgecolor, label )
●绘图样式资料
Matplotlib官网
http:// matplotlib.org
https://matplotlib.org/genindex.html
Gallery页面
https://matplotlib.org/gallery.html