如何在多个图上创建twiny标签

时间:2016-12-20 12:50:32

标签: python-2.7 matplotlib

我使用代码创建了3x3网格图:

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

现在我想在每个图中绘制两个函数,其中x轴是相同的但是y轴对于两个函数是不同的(即每个子图应该具有两个y轴)。我试图使用twinx方法来声明第二个绘图函数

fig, axarr2 = plt.subplots(3,3, sharex=True, sharey=True)
axarr2[0,0] = axarr[0,0].twinx()
axarr2[0,1] = axarr[0,1].twinx()
axarr2[0,2] = axarr[0,2].twinx()
axarr2[1,0] = axarr[1,0].twinx()
axarr2[1,1] = axarr[1,1].twinx()
axarr2[1,2] = axarr[1,2].twinx()
axarr2[2,0] = axarr[2,0].twinx()
axarr2[2,1] = axarr[2,1].twinx()
axarr2[2,2] = axarr[2,2].twinx()

但是这样,我正在创造一个额外的数字,这不是我想要做的。 有人可以帮帮我吗?

2 个答案:

答案 0 :(得分:0)

然后不要创造新的人物。

axarr2 = np.empty_like(axarr)
axarr2[0, 0] = axarr[0,0].twinx()

答案 1 :(得分:0)

正如Goyo所说,没有必要使用我建议的解决方案的版本。我利用他的意见来实施更可持续的解决方案。