matplotlib.colors.LinearSegmentedColormap#
- class matplotlib.colors.LinearSegmentedColormap(name, segmentdata, N=256, gamma=1.0)[源代码][源代码]#
基类:
Colormap
基于查找表使用线性段的色图对象。
查找表是使用线性插值为每种原色生成的,其中0-1域被划分为任意数量的段。
从线性映射段创建颜色映射
segmentdata 参数是一个包含红色、绿色和蓝色条目的字典。每个条目应为 x, y0, y1 元组的列表,形成表格中的行。alpha 条目是可选的。
示例:假设你希望红色在下半部分从0增加到1,绿色在中间部分做同样的变化,蓝色在上半部分。那么你会使用:
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+1] 之间的输入值 z,给定颜色的输出值将在 y1[i] 和 y0[i+1] 之间线性插值:
row i: x y0 y1 / / row i+1: x y0 y1
因此,第一行的 y0 和最后一行的 y1 从未被使用。
参见
LinearSegmentedColormap.from_list
静态方法;用于生成平滑变化的 LinearSegmentedColormap 的工厂函数。
- static from_list(name, colors, N=256, gamma=1.0)[源代码][源代码]#
从颜色列表创建一个
LinearSegmentedColormap
。- 参数:
- 名称str
颜色映射的名称。
- 颜色 : color 列表或 (值, 颜色) 列表列表
如果只给出颜色,它们会从范围 \([0, 1]\) 等距映射;即 0 映射到
colors[0]
,1 映射到colors[-1]
。如果给出 (值, 颜色) 对,映射是从 值 到 颜色。这可以用于不均匀地划分范围。- Nint
RGB 量化级别的数量。
- gamma浮动