在Bokeh 0.11中更改条形图的ColorAttr

时间:2016-01-08 04:35:21

标签: bokeh palette

Bokeh的条形图的ColorAttr中使用的默认调色板只有六个元素,并且具有明显的局限性。据说可以改变Colorattr辅助函数,使用与Spectral10相同的不同调色板,如下所述:

http://bokeh.pydata.org/en/server_branch/docs/reference/charts.html https://notebooks.anaconda.org/nroth/deep-dive-attributes

但我很难想出如何将其应用于实际图表。有没有人有一个例子,说明如何为ColorAttr函数分配一个像Spectral10这样的新调色板,然后将新的ColorAttr分配给一个Bar char?

谢谢! SH

1 个答案:

答案 0 :(得分:0)

它实际上很简单,虽然在文档中肯定不容易找到。您可以在条形图调用中为调色板分配参数:

from bokeh.charts import Bar
from bokeh.palettes import Spectral10

p=Bar( ... ,palette=Spectral10)

如果它有任何用处,这里还有一个代码片段(改编自其他贡献者),我用它来生成具有任意数量颜色的调色板:

import matplotlib.cm as cm
import numpy as np

colormap =cm.get_cmap("jet")
different_colors=15
color_mapping=colormap(np.linspace(0,1,different_colors),1,True)
bokeh_palette=["#%02x%02x%02x" % (r, g, b) for r, g, b in color_mapping[:,0:3]]