Python matplotlib 学习-绘图函数
1 所使用函数说明
(1) plot函数
plt.plot(x,y,ls='--',lw =2,label='text')
参数说明
● x:x轴上的数值。
● y:y轴上的数值。
● ls:折线图的线条风格。
● lw:折线图的线条宽度。
● label:标记图形内容的标签文本。
(2)scatter函数
plt.scatter(x,y1,c="b",label="scatter figure")
参数说明
● x:x轴上的数值。
● y:y轴上的数值。
● c:散点图中的标记的颜色。
● label:标记图形内容的标签文本。
(3)xlim,ylim函数 设置x、y轴坐标范围
plt.xlim(xmin,xmax)
参数说明
● xmin:x轴上的最小值。
● xmax:x轴上的最大值。
● 平移性:上面的函数功能,调用签名和参数说明同样可以平移到函数ylim()上
(4)xlabel,ylabel函数 设置x、y轴坐标标签
plt.xlabel(string)
参数说明
● string:标签文本内容。
● 平移性:上面的函数功能,调用签名和参数说明同样可以平移到函数ylabel()上。
(5)grid 绘制网络线
plt.grid(linestyle=":",color="r")
参数说明
● linestyle:网格线的线条风格。
● color:网格线的线条颜色。
(6)axhline()axvline()函数 绘制平行于x轴的水平参考线
plt.axhline(y=0.0,c="r",ls="--",lw=2)
参数说明
● y:水平参考线的出发点。
● c:参考线的线条颜色。
● ls:参考线的线条风格。
● lw:参考线的线条宽度。
● 平移性:上面的函数功能,调用签名和参数说明同样可以平移到函数axvline()上
(7)axvspan()axhspan()函数 绘制垂直/水平于x轴的参考区域
plt.axvspan(xmin=1.0,xmax=2.0,facecolor="y",alpha=0.3)。
参数说明
● xmin:参考区域的起始位置。
● xmax:参考区域的终止位置。
● facecolor:参考区域的填充颜色。
● alpha:参考区域的填充颜色的透明度。
● 平移性:上面的函数功能、调用签名和参数说明可以平移到函数axhspan()上。
(8)annotate()添加图形内容细节的指向型注释文本
plt.annotate(string,xy=(np.pi/2,1.0),xytext=((np.pi/2)+.15,1.5),weight="bold",color="b",arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="b"))。
参数说明
● string:图形内容的注释文本。
● xy:被注释图形内容的位置坐标。
● xytext:注释文本的位置坐标。
● weight:注释文本的字体粗细风格。
● color:注释文本的字体颜色。
● arrowprops:指示被注释内容的箭头的属性字典。
(9)text()添加图形内容细节的无指向型注释文本
plt.text(x,y,string,weight="bold",color="b")。
参数说明
● x:注释文本内容所在位置的横坐标。
● y:注释文本内容所在位置的纵坐标。
● string:注释文本内容。
● weight:注释文本内容的粗细风格。
● color:注释文本内容的字体颜色。
(10)title()添加图形内容的标题
参数说明
● string:图形内容的标题文本
(11)legend()——标示不同图形的文本标签图例
plt.legend(loc="lower left")。
参数说明
● loc:图例在图中的地理位置。
# -*- coding: utf-8 -*-
"""
Spyder Editor
This is a temporary script file.
"""
import numpy as np
import matplotlib.pyplot as plt
def main():
x = np.linspace(0,2*np.pi,100)
y = np.sin(x)
y1 = np.cos(x)
y2 = np.random.rand(100)
# 创建一个图窗
plt.figure(1)
# 创建1*2图,并在第一个子图中绘制
plt.subplot(2,1,1)
# 绘制x和y的关系,线型为虚线,线宽为2榜,颜色为红色,图例为y=sin(x)
plt.plot(x,y,ls='--',lw=2,color='r',label='y=sin(x)')
# 绘制x和y的关系,并设置线形,线宽,颜色和图例
plt.plot(x,y1,ls='-',lw=2,color='b',label='y=cos(x)')
# 设置坐标边界
plt.xlim(0,2*np.pi)
plt.ylim(-1,1)
# 设置网格颜色和线形
plt.grid(linestyle=":",color = "black")
# 绘制平行于x轴的水平参考线
plt.axhline(y=0.5,c="green",ls="--",lw=2)
# 绘制平行于y轴的水平参考线
plt.axvline(x=0.5,c="green",ls="--",lw=2)
# 绘制垂直于x轴的参考区域
plt.axvspan(xmin=1.0,xmax=2.0,facecolor="y",alpha=0.1)
# 绘制垂直于y轴的参考区域
plt.axhspan(ymin=-0.75,ymax=0.0,facecolor="y",alpha=0.1)
# 添加图形内容细节的指向型注释文本
plt.annotate("maximum",xy=(np.pi/2,1.0),xytext=((np.pi/2)+1.0,.8),weight="bold",color="b",arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="b"))
# 添加图形内容细节的无指向型注释文本
plt.text(0.10,0.09,"y=sin(x)",weight = "bold",color="purple")
# 添加内容标题
plt.title("Example of draw")
# 设置图例显示位置
plt.legend(loc = "lower left")
# 创建1*2图,并在第2个子图中绘制
plt.subplot(2,1,2)
# 绘制散点图
plt.scatter(x,y2,c="blue",marker="+",linewidths=2,alpha=0.5)
plt.show()
if __name__ == '__main__':
main()