matplotlib绘制子图时坐标轴调整(主用subplot方法)

2022-07-26,,,,

当我们要绘制含有多个子图的画布时,很可能遇见需要调整坐标轴的下标排列、范围、是否透明等情况

plt.subplot(121)
plt.subplot(122)
plt.show()

上图为画两个子图时默认坐标轴

要对坐标轴进行调整,首先得清楚原理:

在matplotlib的pyplot模块中,许多函数都是对当前的Figure或Axes对象进行处理,比如说:plt.plot()实际上会通过plt.gca()获得当前的Axes对象ax,然后再调用ax.plot()方法实现真正的绘图。

其中,plt.gca()表示Get Current Axes。

由上,我们就牵扯到了matplotlib的两种基本作图法:用axes绘图或是用pyplot(即plt)绘图。两种方法都可以做到将作图权牢牢的把握在自己手中,区别是axes绘图对流程描述更清晰,pyplot则更方便。

先讲述axes绘图方法来奠定绘图流程的基础。

plt.subplot(121)
ax1 = plt.gca()
ax1.set_xlim([0,255])#重点是对获取到的axes对象进行操作
ax1.xaxis.set_ticks([0,155,225])
plt.show()

其实也可以利用subplot函数返回的一个对象来操作绘图,即

ax1 = plt.subplot(121)
ax1.set_xlim([0,255])
ax1.xaxis.set_ticks([0,155,225])
plt.show()

效果一样

以下为纯用plt默认绘图

plt.subplot(121)
plt.xlim([0,255])
plt.xticks([0,39,190])
plt.show()

用plt进行参数调整时,会默认在最后一个建立的坐标轴上绘图,所以如果建图过程自己很清楚,那么其实这种方法更快更简便。

 

 

 

 

 

 

 

 

 

 

 

 

本文地址:https://blog.csdn.net/yue_csdn/article/details/110439628

《matplotlib绘制子图时坐标轴调整(主用subplot方法).doc》

下载本文的Word格式文档,以方便收藏与打印。