初学Bokeh:修改图形符号(glyphs)的属性【10】跬步

发布时间 2023-10-18 17:39:41作者: ohfaint

初学Bokeh:修改图形符号(glyphs)的属性【10】跬步

如果在创建对象之后希望更改其属性,可以通过直接定义并覆盖对象的属性的方法进行修改。

以上面【9】跬步的绘图例程为例。过参数设置fill_color="red"将圆的填充色定义为红色。若希望将圆的填充颜色从红色改为蓝色,首先需要调用circle()函数时为新对象分配一个变量名(比如circle)。

circle = p.circle(
    x,
    y,
    legend_label="Objects",
    fill_color="red",
    fill_alpha=0.5,
    line_color="blue",
    size=80,
    )

接下来,使用该变量访问对象的glyph属性并更改其属性:

glyph = circle.glyph
glyph.fill_color = "blue"

再次生成红色圆,但这一次在输出图形之前将其颜色改为蓝色:

from bokeh.plotting import figure, show

# 数据初始化
x = [1, 2, 3, 4, 5]
y = [4, 5, 5, 7, 2]

# 新建一个plot对象并设置其title和axis labels
p = figure(title="Glyphs properties example", x_axis_label="x", y_axis_label="y")

# 
circle = p.circle(
    x,
    y,
    legend_label="Objects",
    fill_color="red",
    fill_alpha=0.5,
    line_color="blue",
    size=80,
)

# 修改先前创建对象的glyph的颜色
glyph = circle.glyph
glyph.fill_color = "blue"

# 显示图形
show(p)

fig1