我正在使用外部模块,该模块会自动为图表添加图例。 我想知道是否有办法关闭传奇,比如ax.set_legend(False)。
我可以通过黑客攻击模块来修复它,但我宁愿不这样做。
示例:
f = plt.figure()
ax = f.add_subplot(111)
externalfunction(ax)
# in the function ax.legend() has been called
# would like to turn off the legend here
plt.show()
更新
我为此提出了一个github问题 https://github.com/matplotlib/matplotlib/issues/2792
答案 0 :(得分:3)
您需要更改图例的可见性,请尝试以下操作:ax.legend().set_visible(False)
答案 1 :(得分:3)
这也可以通过将轴的legend_
属性设置为None
来实现。请注意尾随下划线。 E.g。
x, y = np.random.randn(2, 30)
ax = plt.gca()
ax.plot(x, y, label="data")
ax.legend()
ax.legend_ = None
听起来未来的matplotlib版本将有一个更加官方认可的方法来移除轴,但这应该适用于此期间/如果卡在旧版本上。