下面将演示matplotlib如何设置窗体、绘图区、边框、刻度线、刻度值、图例文本等对象的颜色。
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(1,11,1)
y1 = np.arange(1,11,1)
y2 = np.ones(10)*5.5
y3 = np.arange(10,0,-1)
# 设置figure窗体的颜色
plt.rcParams['figure.facecolor'] = 'black'
# 设置axes绘图区的颜色
plt.rcParams['axes.facecolor'] = 'black'
# fig表示figure窗体, ax表示axes绘图区
fig, ax = plt.subplots(1,1)
# 绘图
ax.plot(x, y2)
ax.scatter(x, y1, marker='o', color='red', label="Peaks")
ax.scatter(x, y3, marker='o', color='green', label="Valleys")
# 设置边框颜色
ax.spines['top'].set_color('white')
ax.spines['bottom'].set_color('white')
ax.spines['left'].set_color('white')
ax.spines['right'].set_color('white')
# 设置刻度线和刻度值颜色,axis可以是'x'、'y'和'both'
ax.tick_params(axis='both',colors='white')
# 设置刻度线和刻度值个数,[]表示0个,[10]表示10个,空表示自动设置
# ax.set_xticks()
# ax.set_yticks()
# 添加图例
legend = ax.legend(loc='upper center')
# 设置图例文本颜色
for text in legend.get_texts():
text.set_color('white')
# 保存图像
# 这里一定要设置facecolor='black',否则plt.rcParams['figure.facecolor'] = 'black'设置无效
plt.savefig('test.png', facecolor='black')
plt.show()
运行结果: