matplotlib入门

matplotlib绘制的图位于图片(Figure)对象中

fig = plt.figure()  #生成图片

使用add_subplot创建子图(subplot)

fig = plt.figure()
ax1 = fig.add_subplot(2,2,1)
ax2 = fig.add_subplot(2,2,2)
ax3 = fig.add_subplot(2,2,3)

因为使用子图网格创建图片是非常常见的任务,所以matplotlib包含了一个便捷的方法

fig,axes = plt.subplots(2,2)
axes[1,0].scatter(np.arange(20),np.arange(20))  #axes可以像二维数组一样索引

例子:只有一张子图的情况

fig,ax = plt.subplots(figsize=(8,4))
ax.scatter(np.arange(10),np.arange(10),color='b')
ax.plot(np.random.randn(10).cumsum(),'g--')                      #颜色和线性的缩写
#ax.plot(np.random.randn(10).cumsum(),color='g',linestyle='--')  #显示的设置颜色和线型

fig,ax = plt.subplots(figsize=(8,4))
ax.scatter(np.arange(
10),np.arange(10),color='b',label='test1') #label设置图例 ax.plot(np.random.randn(10).cumsum(),color='g',linestyle='dashed',
marker='o', label='test2') #marker='o',转折处为小圆点
plt.xlim([-2,10]) #设置x轴范围
plt.ylim([-2,10]) #设置y轴范围
ax.legend(loc='best') #生成图例,loc=‘best’自动选择合适的位置
ax.set_xlabel('xxx') #设置x轴名称
ax.set_ylabel('yyy') #设置y轴名称
ax.set_title('test1 vs. test2') #设置子图标题

 消除x轴,y轴

fig,ax = plt.subplots(figsize=(4,4))
x = np.linspace(0,10,100)
y = 0.5*x
ax.plot(x,y)
plt.xticks([])   #消除x轴
plt.yticks([])   #消除y轴
plt.show()

原文地址:https://www.cnblogs.com/tongtong123/p/10622400.html