导入matplotlib库:
import matplotlib
import matplotlib.pyplot as plt
%matplotlib inline 显示图表
plt.style.use('ggplot') 使用'ggplot'风格美化显示的图表
设置字体和和负数符号的显示
font = {'family':'SimHei'} 设置使用的字体(需要显示中文的时候使用)
matplotlib.rc('font',**font) 设置显示中文,与字体配合使用
matplotlib.rcParams['axes.unicode_minus']=False 当坐标轴有负号的时候可以显示负号
绘图代码:
定义函数:
def f(t):
return np.exp(-t)np.cos(2np.pit)
定义绘图数据:
t1=np.arange(0.0,5.0,0.1)
t2=np.arange(0.0,5.0,0.02)
确定绘图区域与图表:
plt.figure(1)
第一个绘图区域的图形:
plt.subplot(211) 确定第一个图的位置
plt.plot(t1,f(t1),'bo',t2,f(t2),'k') 绘图
第二个绘图区域图表:
plt.subplot(212) 确定绘第二个图的位置
plt.plot(t2,np.cos(2np.pi*t2),'r--') 绘图
绘图代码:
定义函数:
def f(t):
return np.exp(-t)np.cos(2np.pi*t)
t1=np.arange(0.0,5.0,0.1)
t2=np.arange(0.0,5.0,0.02)
plt.figure(1,figsize=(15,9)) 定义图表大小
plt.suptitle('函数图表',fontsize=20,y=1.05) 设置图表大标题和标题字体的大小,y为标题位置的偏移距离(也可以设置x的偏移距离)
图一:
plt.subplot(211)
plt.plot(t1,f(t1),'bo',t2,f(t2),'k')
plt.title('这是子图表标题',fontsize=20) 设置子图表标题和标题字体的大小
plt.text(0.5,0.8,'这是图表',fontsize=20) 设置图表标签(提示)
plt.tight_layout(pad=5,rect=(0,0,1,1)) 设置两个子图之间的间隔,rect是图表的位置,默认(0,0,1,1)
图二:
plt.subplot(212)
plt.plot(t2,np.cos(2np.pit2),'r--')
plt.title('正弦函数',fontsize=20) 设置子图表标题和标题字体的大小
plt.ylim(-2,2) 设置图二的Y轴上下限,也可以设置X轴的
plt.annotate('local max',xy=(2,1),xytext=(3,1.5),arrowprops=dict(facecolor='black', shrink=0.05),fontsize=20) 设置图表的标注和箭头
详细说明:
plt.annotate():第一个参数为显示的内容,xy=(2,1)表示标注的点的位置,arrowprops=dict(facecolor='black', shrink=0.05)是显示箭头的大小和颜色,fontsize是设置字体的大小;
有时候需要调整子图间矩,包括子图与边框的间矩,子图间上下间矩,子图间左右间矩,可以使用fig.tight_layout()函数:
plt.tight_layout(renderer=None, pad=1.08, h_pad=None, w_pad=None, rect=None)
函数的参数解释:
pad:浮点型数据,在图形边缘和子图边缘直接填充间隔;
h_pad和w_pad:浮点型数据,在相邻子图的边缘之间进行填充间隔;
rext:设置显示图形的位置,默认(0,0,1,1)