10

我不知道如何在图形周围添加边框,我的理解是这将是 figure.edgecolor 参数或 savefig(edgecolor) 但这似乎不起作用。我正在使用 matplotlib 1.1.1。我希望这段代码在图形周围画一个红色边框:

import matplotlib.pyplot as plt
plt.plot([1,2,3])
plt.savefig('test.png', edgecolor='r', facecolor='g')

当我看这个图时,它有一个绿色的 facecolor,但我没有看到一个红色的 edgecolor?

以下也不起作用:

import matplotlib.pyplot as plt
plt.figure(edgecolor='r', facecolor='g')
plt.plot([1,2,3])
plt.show()

我再次看到绿色的 facecolor,但没有红色的 edgecolor。我究竟做错了什么?

有任何想法吗?

4

1 回答 1

8

根据 的文档matplotlib.figure.Figure(),图形的边缘默认linewidth设置为0.0edgecolor如果您在任一代码片段中提高此值,您可以可视化:

import matplotlib.pyplot as plt
plt.figure(linewidth=2)
plt.plot([1,2,3])
plt.savefig('test.png', edgecolor='r', facecolor='g')

或者:

import matplotlib.pyplot as plt
plt.figure(edgecolor='r', facecolor='g', linewidth=2)
plt.plot([1,2,3])
plt.show()

linewidth=0.0是一个很好的默认值,但它应该更好地记录在matplotlib.pyplot.savefig()中。

于 2013-04-29T23:11:46.057 回答