我想在下面的每一个次要情节中加入传奇。我试过使用传奇,但是没有效果。
f, (ax1, ax2, ax3) = plt.subplots(3, sharex=True, sharey=True)
ax1.plot(xtr, color='r', label='Blue stars')
ax2.plot(ytr, color='g')
ax3.plot(ztr, color='b')
ax1.set_title('2012/09/15')
plt.legend([ax1, ax2, ax3],["HHZ 1", "HHN", "HHE"])
plt.show()
根据atomh33ls的建议:
ax1.legend("HHZ 1",loc="upper right")
ax2.legend("HHN",loc="upper right")
ax3.legend("HHE",loc="upper right")
图例位置是固定的,但它似乎有一个字符串的问题,因为每个字母都被放置在一个新的行。
有人知道怎么修吗?
3条答案
按热度按时间ajsxfq5m1#
这应该行得通:
mbskvtky2#
您想要的操作无法完成,因为
plt.legend()
在当前轴 * 中放置了一个图例 *,在您的示例中是在最后一个轴中。另一方面,如果您可以满足于在最后一个子图中放置一个全面的图例,则可以这样做
注意,传递给
legend
的不是轴,如示例代码中那样,而是plot
调用返回的行。PS
当然,您可以在每个子情节之后调用
legend
,但据我所知,您已经知道了这一点,并且正在寻找一种立即执行此操作的方法。daupos2t3#
这样做符合您的要求,并克服了其他答案中的一些问题:
...产生...