在Python面向对象的绘图中删除图例周围的框架

时间:2014-09-18 21:41:12

标签: python matplotlib

我想删除图例框周围的框架。我找到了一些方法。但是,没有一个用“轴方法”实现它们。

下面显示的代码会得到结果,但我希望知道一种更清晰,更优雅的方式,也许就像ax.legend.draw_frame(False)或类似的东西。如果没有使用pylab这样的方法存在任何想法?

解决方案:按Evert

的建议使用ax.legend(numpoints=1, loc=3, frameon=False)
import numpy as np
import matplotlib.pyplot as plt
from pylab import legend

x = np.linspace(1,10, 100)
y = x**3

fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.plot(x,y, 'bo', label='Blah!')
lg = legend(numpoints = 1, loc=2)
lg.get_frame().set_alpha(0)
#ax.legend(numpoints = 1, loc=2)

plt.show()

1 个答案:

答案 0 :(得分:3)

由于@Evert不想回答我会这样做以便将其标记为已解决。但请给他/她点。

按照Evert

的建议使用ax.legend(numpoints=1, loc=3, frameon=False)