0

在以下设置中,我基于基本示例创建了一个面积图。如何自动甚至以编程方式获取输入的图例。现在我只得到一个带有一个项目“a”和第一种颜色的图例。

from bokeh.plotting import *

...
patches([x2 for a in areas], list(areas.values()), color=colors, alpha=0.8,
    line_color=None, legend='a', title="hello chart")

legend().orientation = "top_right" # what other options, may here?
show()

将图例作为值传递给补丁的格式是什么,或者如何触发 legend() 以显示图中每个项目的项目和颜色?

4

2 回答 2

2

我在散景中发现了以下评论,敬请期待:

好的,这些手绘图例很笨拙,将在以后的版本中改进

这暂时有效:

hold() # stop the curplot() 
# and add the legend just next to the data
x, y = 15.5, 0
for i,area in enumerate(areas):
    rect([x], [y], color=colors[i], width=0.3, height=400)
    text([x], [y], text=area, angle=0, text_font_size="8pt", text_align="center", text_baseline="middle")
    y = y + 100

show()
于 2014-08-17T22:40:34.320 回答
2

我没有使用的答案patches,但您可以使用多个patch

from bokeh.plotting import *

...
for a, area in enumerate(areas):
    p.patch(x2, areas[area], color=colors[a], legend=area, alpha=0.8, line_color=None)

show()

它很好地显示了每个区域的图例。

于 2015-10-06T23:29:34.543 回答