颜色图包含映射在区间 [0,1] 上的红色、绿色和蓝色值的字典。这线性分段色彩图 http://matplotlib.sourceforge.net/api/colors_api.html#matplotlib.colors.LinearSegmentedColormap类文档给出了示例
cdict = {'red': [(0.0, 0.0, 0.0),
(0.5, 1.0, 1.0),
(1.0, 1.0, 1.0)],
'green': [(0.0, 0.0, 0.0),
(0.25, 0.0, 0.0),
(0.75, 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, 1.0, 1.0)]}
“表中给定颜色的每一行都是 x、y0、y1 元组的序列。在每个序列中,x 必须从 0 单调增加到 1。对于落在 x[i] 和 x[i+ 之间的任何输入值 z 1],给定颜色的输出值将在 y1[i] 和 y0[i+1] 之间线性插值:”
The RdYlGn
颜色图对于每种颜色有 11 个 x 值,从 0 到 1.0,步长为 0.1。您可以获得cdict
通过调用值
plt.cm.RdYlGn._segmentdata
然后,您可以将 x 值更改为您想要的任何步骤(只要它们单调递增且范围从 0 到 1),并通过调用获取新的颜色图matplotlib.colors.LinearSegmentedColormap
在你的新cdict
。在这方面有几个很好的例子Matplotlib 食谱 http://www.scipy.org/Cookbook/Matplotlib/ColormapTransformations.