【发布时间】:2020-04-20 17:22:18
【问题描述】:
我做了一个函数来获取一组数据的十六进制代码,如下所示:
from matplotlib import cm, colors
def get_color(series_data, cmap='Reds'):
color_map = cm.get_cmap(cmap, 20)
f = lambda x: colors.rgb2hex(color_map(x/series_data.max())[:3])
return series_data.apply(f)
cm.get_cmap(cmap, 20) 生成一个 matplotlib.colors.LinearSegmentedColormap 对象,范围从输入 series_data 的最小值到最大值。
我看不出如何为要评估的数据定义颜色限制。例如,如果我想设置恒定的颜色限制,将最小值定义为 0,最大值定义为 100,该怎么办?我怎么能在我的函数中做到这一点?
我尝试将series_data.max() 替换为100 来控制最大等效颜色(max),但我无法控制cmin。
【问题讨论】: