我有一个颜色条,我为地球表面温度的热图图像创建。我遇到的问题是pyplot图保存了白色背景,我在黑色背景上有地球图像。我将图形图像设置为透明,需要将轴上的文本和刻度更改为白色。
我已经尝试了我在这里看到的所有内容,并在matplotlib网站上搜索了几个小时,但似乎没有什么比改变文字颜色更简单。
a = np.array([[319.785, 198.988]])
plt.figure(figsize=(7, 1))
img = plt.imshow(a)
plt.gca().set_visible(False)
cax = plt.axes([0, .3, 1, 0.5])
cb = plt.colorbar(orientation='horizontal', cax=cax)
plt.savefig("colorbar.png", bbox_inches='tight', transparent=True)
plt.show()
答案 0 :(得分:1)
您可以使用rcParams将刻度线的颜色,标签的颜色和轴边缘的颜色全部设置为白色。
import matplotlib.pyplot as plt
import numpy as np
params = {"ytick.color" : "w",
"xtick.color" : "w",
"axes.labelcolor" : "w",
"axes.edgecolor" : "w"}
plt.rcParams.update(params)
a = np.array([[319.785, 198.988]])
fig =plt.figure(figsize=(7, 1))
# set facecolor black for testing:
fig.set_facecolor("k")
img = plt.imshow(a)
plt.gca().set_visible(False)
cax = plt.axes([0, .3, 1, 0.5])
cb = plt.colorbar(orientation='horizontal', cax=cax)
plt.show()