【发布时间】:2021-12-29 04:44:31
【问题描述】:
我正在尝试使用文档中的示例创建自定义颜色映射,但我不知道如何设置颜色范围。
https://matplotlib.org/2.0.2/examples/pylab_examples/custom_cmap.html
这是最接近我需要的:(全绿从 1.0 到 0.916,全黄从 0.916 到 0.75,全红低于 0.75)
cdict1 = {'red': ((0.0, 1.0, 1.0),
(0.75, 1.0, 1.0),
(1.0, 0.0, 0.0)),
'green': ((0.0, 0.0, 0.0),
(0.75, 1.0, 1.0),
(0.91666666666, 1.0, 1.0),
(1.0, 1.0, 1.0)),
'blue': ((0.0, 0.0, 0.0),
(0.5, 0.0, 0.0),
(1.0, 0.0, 0.0))}
我不明白为什么这个颜色图是颜色之间的平滑过渡。
【问题讨论】:
-
您正在引用一个非常古老的页面。最新的可以找到here。您似乎想要一个只有 3 种固定颜色但边界不相等的颜色图。这可以纯粹使用颜色图来完成,但标准方式使用
BoundaryNorm -
@JohanC 经过一些调整,我能够解决这个问题,但我仍然对这些值如何相互对应一无所知。
-
LinearSegmentedColormap是一个相当复杂的函数,并不那么直观。
标签: python matplotlib colormap