3

如何更改 matplotlib 中散点图的背景颜色?

目前我有

import matplotlib.pyplot as plt
plt.scatter(X, Y, c=T, marker='o', s=(0.005*r), linewidth=0, cmap=cm.coolwarm)
plt.scatter(X_stars, Y_stars, marker='o', s=(0.00000005*r), color='white')

plt.savefig(filename, format='ps')

我希望背景是黑色的,而不是白色的。我已经变黑了facecoloredgecolor但没有达到预期的效果。设置transparent=True使其透明,以便我可以在 Photoshop 中更改背景,但它必须在 matplotlib 中工作,因为我有大量的绘图。

4

1 回答 1

8

编辑:正如 endolith 在评论中提到的那样,axisbg 在 matplotlib 的 2.0 版中已被弃用。改用 facecolor。

ax = fig.add_subplot(111, facecolor='black')

您可以使用 add_subplot 方法的 axisbg 参数。这是一个小例子:

import matplotlib.pyplot as plt

a = random(100)*10
b = range(100)
fig = plt.figure(1)
ax = fig.add_subplot(111, axisbg='black')
ax.scatter(a,b)
fig.canvas.draw()
于 2013-08-01T09:46:10.027 回答