如何独立于散点图的fill_alpha在Bokeh中设置图例颜色的透明度?

时间:2018-12-15 09:07:34

标签: python bokeh

对于具有20k +点的复杂散点图,我需要将散点的fill_alpha设置为一个较低的值,例如0.2。

如何在传奇中将填充颜色设置为完全不透明(又称为不透明)?

enter image description here

示例代码:

from bokeh.plotting import figure, output_file, show
from bokeh.models import ColumnDataSource

p = figure(plot_width=640, plot_height=320)

x = [10]
y = [10]
color = ["blue"]
category = ["Lorem Ipsum"]

source = ColumnDataSource(dict(x = x, y = y, color=color, legsrc=category))

p.scatter(x="x", y="x", fill_alpha=.2, size=100, color="color",
         line_color=None, marker="circle", source=source, legend="legsrc")

show(p)

2 个答案:

答案 0 :(得分:1)

截至Bokeh 1.0.2。这是不可能的。图例项始终反映它们精确表示的字形的视觉属性,包括alpha。如果您想讨论添加某种机制来覆盖图例字形属性的可能性,那么下一步将是制作一个 detailed feature request issue on GitHub

答案 1 :(得分:1)

可以肯定我没时间了,但也许仍然可以帮助其他人。 我通过制作两个不同的图解决了这个问题:第一个具有颜色映射并且没有图例,第二个具有单色,具有图例选项和size = 0(因此不会显示)

在您的情况下:

p.scatter(x="x", y="x", fill_alpha=.2, size=100, color="color",
         line_color=None, marker="circle", source=source)

p.scatter(x="x", y="x", size=0, color="lightgrey",
         line_color=None, marker="circle", source=source, legend="legsrc")