如何使用matplotlib的colormap将数字映射到颜色?
考虑一个包含浮点数的variablesx
。 我想使用matplotlib的colormap将这个数字映射到一个颜色,但不能绘制任何东西。 基本上,我希望能够使用mpl.colors.Normalize(vmin = -20, vmax = 10)
selectmpl.cm.autumn
,例如,使用mpl.colors.Normalize(vmin = -20, vmax = 10)
设置范围,然后将x
映射到相应的颜色。 但是我真的没有得到mpl.cm
的文档,所以如果有人可以给我一个提示。
它就像cm.hot(0.3)
一样简单,返回(0.82400814813704837, 0.0, 0.0, 1.0)
。
完整的工作计划可以阅读
import matplotlib.cm as cm print cm.hot(0.3)
如果你还想要使用标准器,请使用
import matplotlib as mpl import matplotlib.cm as cm norm = mpl.colors.Normalize(vmin=-20, vmax=10) cmap = cm.hot x = 0.3 m = cm.ScalarMappable(norm=norm, cmap=cmap) print m.to_rgba(x)
你可以通过提供一个介于0和1之间的参数,例如cm.autumn(0.5)
,从一个色彩表中获得一个颜色。
如果游戏中有规范化实例,则使用规范化返回:
import matplotlib.cm as cm from matplotlib.colors import Normalize cmap = cm.autumn norm = Normalize(vmin=-20, vmax=10) print cmap(norm(5))