Matplotlib 颜色映射注册

3

我认为这应该能够正常工作:

cm = matplotlib.colors.LinearSegmentedColormap.from_list('phases', ['g', 'y', 'c', 'm', 'b', 'r']
plt.register_cmap('phases', cm)

但是当我输入:

plt.cmap.phases

我遇到了一个属性错误。很明显我的cmap并没有像我想象的那样被注册。但是原因不是很清楚。
Ben
1个回答

5
您的颜色映射被注册了。plt.cm中只包含内置的颜色映射,而不包括已注册的颜色映射。
要获取颜色映射,请使用plt.cm.get_cmap('phases')。 要将颜色映射设置为默认值,请使用plt.set_cmap('phases')。 要获取所有内置和已注册的颜色映射,请使用plt.colormaps()。 要仅获取已注册的(非内置)颜色映射,请使用[cm for cm in plt.colormaps() if cm not in dir(plt.cm)]。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接