开始讲今天的内容之前,先说一点题外话。上学的时候地理课上会画一些等高图、小地图之类的,那时候小编就对地理产生了浓厚的兴趣,不过最后因为种种原因还是没有选择继续学习地理方面的知识了。接触了python之后,发现可以用来画地理中的一些图片,就真是振奋人心的好消息。在我们今天画子图的内容中,也会提到卫星弧段图。感兴趣的小伙伴我们一起来看看吧。
Python可通过subplot函数画多个子图。调用形式如:subplot(nrows,ncols,index),图表的整个绘图区域被分成nrows行和ncols列,按照从左到右,从上到下的顺序对每个子区域进行编号,左上的子区域编号为1。index参数指定创建的Axes对象所在的区域。
matplotlib官网上的一个2*2多子图例子如下所示:
importmatplotlib.pyplotasplt importnumpyasnp #Someexampledatatodisplay x=np.linspace(0,2*np.pi,400) y=np.sin(x**2) fig,((ax1,ax2),(ax3,ax4))=plt.subplots(2,2) fig.suptitle('Sharingxpercolumn,yperrow') ax1.plot(x,y) ax2.plot(x,y**2,'tab:orange') ax3.plot(x,-y,'tab:green') ax4.plot(x,-y**2,'tab:red') foraxinfig.get_axes(): ax.label_outer()
比如要将卫星弧段图和SNR图两个图按照上下顺序放置于同一张图时,可采用如下方式:
importmatplotlib.pyplotasplt plt.figure() plt.subplot(211) plt.plot(t1,Satarc) plt.subplot(212) plt.plot(t2,SNR)
以上就是python中用subplot画多个子图的方法,同时我们也可以把把它们画在一个图中。更多有趣用python画地理图片的小方法,小伙伴们也可以自行探索。希望今天的内容能对大家有所帮助~