六个迭代子图上的共享x轴

时间:2016-12-07 15:12:43

标签: matplotlib axis axis-labels subplot

这是我到目前为止的图表:

graph

我希望有一个共享的x和y轴。

我正在尝试获得六个子图的共享x和y轴,我在for循环中迭代。我想在y上显示频率,然后在x上显示伽马辐射。

elems=[island1,island2,island3,island4,island5,island6,island7]

#these elems are radiation data pulled in from excel

fig,axtemp=plt.subplots(2,3) 
fig.set_size_inches(15,15) 
fig.subplots_adjust(wspace=0.2)
props=dict(boxstyle='round',facecolor='white',alpha=0.5)
colors=['red','green','darkorange','mediumblue','gold','purple']
for i,elem in enumerate(elems):
    ax=axtemp[i%2][i/2]
    bins = 10**(np.linspace(0.1,4))
    ax.set_xscale('log')
    ax.set_xlim([3.5,1000])
    n, bins, patches = ax.hist(elem, bins=bins, normed=1, color=colors[i], alpha=0.75)
ax.set_xlabel('Gamma Radiation, mrem/yr')

1 个答案:

答案 0 :(得分:0)

Pyplot允许设置共享轴,例如直接调用plt.subplots

在您的情况下,只需使用

fig,axtemp=plt.subplots(2,3, sharex=True, sharey=True)

然后,您只需将比例和轴限制设置为其中一个图。