我已经能够使用基本颜色、r、g、b 等更改绘图的表面颜色。但是,我正在开发一个项目,我需要准备一个视觉上令人愉悦的演示文稿,我想使用更广泛的颜色,例如 here 列出的颜色。这是我正在使用的代码(我希望图表下方的区域被着色):
fig = plt.figure(num=None, figsize=(30, 50))
ax1 = fig.add_subplot(2,1,1)
ax1.plot(x, y, 'k-')
ax1.fill_between(x, min(y), y, facecolor='#8B0000')
但是,当我使用十六进制颜色时,facecolor 不会执行任何操作,但当我使用“r”、“b”等时它会起作用。有没有办法在 fill_ Between 中使用十六进制颜色代码?
最佳答案
According the docs facecolor
接受 matplotlib 颜色参数或 rgba 元组序列。如果您想使用十六进制颜色,您必须首先将十六进制值转换为正确的格式。看一下 matplotlib.colors 模块。我不太熟悉这个库,但也许 hex2color有用。
关于python - Matplotlib 设置子图的面颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29103907/