我有这个脚本在同一页面中绘制7系列。我想将页面方向设置为Portrait。你可以看到,我试过了:
f.savefig(sta+'.pdf', orientation='portrait', format='pdf')
但没有任何反应!
你有什么建议吗?
f, (ax1, ax2, ax3, ax4, ax5, ax6, ax7) = plt.subplots(7, sharex=True, sharey=False)
plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=None, hspace=0.5)
ax1.plot(xtr[:num.size(xt),i], color='black')
ax2.plot(ytr[:num.size(yt),i], color='black')
ax3.plot(ztr[:num.size(zt),i], color='black')
ax4.plot(obs_dataV[:,i], color='g')
ax5.plot(obs_dataH[:,i], color='r')
ax6.plot(obs_dataP, color='g')
ax7.plot(obs_dataS, color='r')
ax1.set_title( sta+' Raw data', loc='left', fontsize='10')
ax4.set_title('Vertical and Horizontal traces', loc='left', fontsize='10')
ax6.set_title('Characteristic functions', loc='left', fontsize='10')
ax1.legend('X',loc='center right', fontsize='12')
ax2.legend('Y',loc='upper right', fontsize='12')
ax3.legend('Z',loc='upper right', fontsize='12')
ax4.legend('P',loc='upper right', fontsize='12')
ax5.legend('S',loc='upper right', fontsize='12')
ax6.legend('P',loc='upper right', fontsize='12')
ax7.legend('S',loc='upper right', fontsize='12')
f.savefig(sta+'.pdf', orientation='portrait', format='pdf')
plt.show()
提前致谢: - )
答案 0 :(得分:3)
我认为你想要改变数字大小,而不是与页面布局有关的任何事情。 orientation
kwarg到savefig
实际上仅适用于PS和EPS后端。对于PDF,页面大小定义为等于图形大小,因此它没有任何效果。
作为当前结果的简短示例:
import matplotlib.pyplot as plt
fig, ax = plt.subplots(nrows=7, sharex=True, sharey=False)
fig.subplots_adjust(hspace=0.5)
plt.show()
要更改图的大小,请使用figsize
kwarg:
import matplotlib.pyplot as plt
fig, ax = plt.subplots(nrows=7, figsize=(8, 11), sharex=True, sharey=False)
fig.subplots_adjust(hspace=0.5)
plt.show()