绘制matplotlib图表组成元素的函数用法
1.plot():展示变量的趋势变化
函数基本参数介绍:plt.plot(x,y,ls = '-',lw = 2,label = 'plot figure')
x | x轴上的数值 |
y | y轴上的数值 |
ls | 折线图的线条风格 |
lw | 折线图的线条宽度 |
label | 标记图形内容的标签文本 |
2.xlim():设置x轴的数值显示范围
函数基本参数介绍:plt.xlim(xmin,xmax)
xmin | x轴上的最小值 |
xmax | x轴上的最大值 |
ylim()调用签名与参数说明与xlim()相似,这里不在赘述。
3.xlabel():设置x轴的标签文本
函数基本参数介绍:plt.xlabel(string)
string | 标签文本内容 |
ylabel()调用签名与参数说明与xlabel()相似,这里不在赘述。
4.grid():绘制刻度线的网格线
函数基本参数介绍:plt.grid(linestyle = ':',color = 'r')
linestyle | 网格线的线条风格 |
color | 网格线的线条颜色 |
5.axhline():绘制平行于x轴的水平参考线
函数基本参数介绍:plt.axhline(y = 0.0,c = 'r',ls = '--',lw = 2)
y | 水平参考线的出发点 |
c | 参考线的线条颜色 |
ls | 参考线的线条风格 |
lw | 参考线的线条宽度 |
axvline():绘制垂直于x轴的垂直参考线
axvline()调用签名与参数说明与axhline()相似,这里不在赘述。
6.axvspan():绘制垂直于x轴的参考区域
函数基本参数介绍:plt.axvspan(xmin = 1.0,xmax = 2.0,facecolor = 'y',alpha = 0.3)
xmin | 参考区域的起始位置 |
xmax | 参考区域的终止位置 |
facecolor | 参考区域的填充颜色 |
alpha | 参考区域的填充颜色的透明度 |
axhspan():绘制平行于x轴的参考区域
axhspan()调用签名与参数说明与axvspan()相似,这里不在赘述。
7.annotate():添加图形内容细节的指向型注释文本
函数基本参数介绍:plt.annotate(string,xy = (np.pi/2,1.0),xytext = ((np.pi/2)+0.15,1.5),weight = 'bold',color = 'b',arrowprops = dict(arrowstyle = '->',connectionstyle = 'arc3',color = 'b'))
string | 图形内容的注释文本 |
xy | 被注释图形内容的位置坐标 |
xytext | 注释文本的位置坐标 |
weight | 注释文本的字体粗细风格 |
color | 注释文本的字体颜色 |
arrowprops | 指示被注释内容的箭头的属性字典 |
8.text():添加图形内容细节的无指向型注释文本
函数基本参数介绍:plt.text(x,y,string,weight = 'bold',color = 'b')
x | 注释文本内容所在位置的横坐标 |
y | 注释文本内容所在位置的纵坐标 |
string | 注释文本内容 |
weight | 注释文本内容的粗细风格 |
color | 注释文本内容的字体颜色 |
9.title():添加图形内容的标题
函数基本参数介绍:plt.title(string)
string | 图形内容的标题文本 |
10.legend():标示不同图形的文本标签图例
函数基本参数介绍:plt.legend(loc = 'lower left')
loc | 图例在图中的地理位置 |
#导入需要使用的库
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0.05,10,1000)#在0.05到10之间生成1000个等间隔数值作为x(包含两个端点值)
y = np.cos(x)
plt.plot(x,y,ls = '-',lw = 2,label = 'plot figure')
#取所想看到的x和y的范围的图像
plt.xlim(0,10)
plt.ylim(0,1)
#设置标签,x标签为水平分布,y标签为垂直分布
plt.xlabel('x-axis')
plt.ylabel('y-axis')
plt.title('y = cos(x)')
#绘制网格线,可以通过设置linestyle,color参数改变网格线的线条风格和线条颜色,此处代码为默认的风格和颜色
plt.grid()
#绘制水平参考线和垂直参考线
plt.axhline(y = 0.5,c = 'r',ls = '--',lw = 2)
plt.axvline(x = 4.0,c = 'r',ls = '--',lw = 2)
#绘制参考区域
facecolor = 'y'#表示颜色为黄色
plt.axvspan(xmin = 5.0,xmax = 6.0,facecolor = 'y',alpha = 0.3)
plt.axhspan(ymin = 0.0,ymax = 0.2,facecolor = 'y',alpha = 0.3)
#添加指向型注释文本
#arrowstyle表示箭头风格,'->'表示为实线箭头,connectionstyle表示箭头连接方式,arc3表示为连接方式为弧线,color = 'b'表示设置颜色为蓝色
plt.annotate('maximum',xy = (np.pi*2,1.0),xytext = ((np.pi*2)+1.0,0.8),weight = 'bold',color = 'b',arrowprops = dict(arrowstyle = '->',connectionstyle = 'arc3',color = 'b'))
#添加无指向型注释文本
plt.text(3,0.5,'y = cos(x)',weight = 'bold',color = 'b')
#可以不设置loc,直接使用plt.legend()将标签位置放置在最佳位置上
plt.legend(loc = 'lower left')
#将图像显示出来
plt.show()
以下显示上述代码运行结果(使用的运行环境为pycharm)
11.scatter():寻找变量之间的关系
函数基本参数介绍:plt.scatter(x,y,c = 'b',label = 'scatter figure')
x | x轴上的数值 |
y | y轴上的数值 |
c | 散点图中的标记的颜色 |
label | 标记图形内容的标签文本 |
scatter()函数的应用与plot()函数具有相似点,上述大量函数同时也是可以适配散点图的
#导入需要使用的库
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0.05,10,1000)#在0.05到10之间生成1000个等间隔数值作为x(包含两个端点值)
y = np.random.rand(1000)#生成一个含有1000个元素的一维数组,且每个元素都是属于[0,1)之间均匀分布的随机浮点数,此函数为numpy库中的函数
plt.scatter(x,y,label = 'scatter figure',c = 'skyblue')#c即为color
#取所想看到的x和y的范围的图像
plt.xlim(5,15)
plt.ylim(0,1.5)
#设置标签,x标签为水平分布,y标签为垂直分布
plt.xlabel('x')
plt.ylabel('y')
plt.title('scatter figure')
#绘制网格线,可以通过设置linestyle,color参数改变网格线的线条风格和线条颜色,此处代码为默认的风格和颜色
plt.grid()
#可以不设置loc,直接使用plt.legend()将标签位置放置在最佳位置上
plt.legend(loc = 'lower left')
#将图像显示出来
plt.show()
以上代码运行结果如下:
参考书:python数据可视化之matplotlib实践 ,作者:刘大成
以上表述有任何错误,希望大家能够批评指正。
文章中如有侵权部分,请联系我删除,很抱歉为您带来困扰!