matplotlib图插入空格

时间:2014-12-05 18:10:23

标签: python matplotlib

我正在制作一个包含插图的数字。我无法弄清楚如何删除空白。我尝试过使用tight_sublot(),但它仍然会在我要删除的插图附近留下空白。有什么建议吗?

import numpy as np
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import silicon2_data

data = silicon2_data.out

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

for temperature in data:
    xs = temperature[:,0]
    ys = temperature[:,1]
    zs = temperature[:,2]
    ax.scatter(xs, ys, zs)
ax.set_zbound(0, 1.4)

ax.set_xlabel(r'$2\theta$ (degrees)')
ax.set_ylabel('Temperature (K)')
ax.set_zlabel(r'Intensity ($10^5$cts/sec)')
#inset
ax2 = fig.add_axes([0.15, 0.62, 0.25, 0.25])

ax2.plot(data[3,:,0], data[3,:,2],'bo')
ax2.plot(data[7,:,0], data[7,:,2],'rx')

ax2.legend(('16K', '18K'), loc=0, fontsize ='small')
ax2.set_ybound(0, 1.4)

plt.tight_layout()
plt.show()

这大致是我想要做的:

enter image description here

1 个答案:

答案 0 :(得分:0)

致电后

fig = plt.figure()

您可以使用pyplot' fig.add_subplot()方法在使用subplots_adjust()添加子图之前调整子图的特征。出于您的目的,您可以尝试

fig.subplots_adjust(wspace=0.05)
fig.subplots_adjust(hspace=0.05)

其中数字是数字宽度或高度的分数。