📜  Python Bokeh – 在图形上绘制光线(1)

📅  最后修改于: 2023-12-03 15:33:58.323000             🧑  作者: Mango

Python Bokeh – 在图形上绘制光线

Bokeh是一个基于Web的Python绘图库,可以创建交互性和复杂性可视化的应用程序。Bokeh可以输出为静态图形或动态图形,并可以完美嵌入到网页中使用。

在Bokeh中,我们可以使用add_glyph方法将光线绘制到图形上。以下是如何在图形上绘制三条光线的示例代码:

from bokeh.models import ColumnDataSource, Arrow, OpenHead
from bokeh.plotting import figure, show

source = ColumnDataSource(data=dict(x=[0, 0, 0], y=[0, 1, -1], angel=[-30, 0, 30]))

p = figure(x_range=(-1, 1), y_range=(-1, 1), width=400, height=400)
p.segment(x0='x', y0='y', x1='x', y1='y', source=source, color='black')

glyph = Arrow(end=OpenHead(size=10), line_color="black", line_width=1.5, x_start='x', y_start='y', x_end='x2', y_end='y2',)
p.add_glyph(source, glyph)

show(p)

代码说明:

  1. 首先,我们导入了我们需要使用的ColumnDataSource、Arrow和OpenHead类,以及plotting子模块和show函数(用于展示图形)。
  2. 然后,我们定义了我们要在图形上绘制的三条光线的初始位置和角度。
  3. 接下来,我们创建了一个名为“p”的图形,并将其x和y轴范围设置为[-1, 1],宽度和高度均设置为400。我们还使用了segment方法将光线的初始位置绘制在图形上。
  4. 在最后一步中,我们创建了一个Arrow对象,设置箭头的大小、线条颜色和线宽。然后我们使用add_glyph方法,将Arrow对象添加到我们的图形上。

运行程序后,将看到三条带箭头的光线,可以通过拖动图形来交互式地查看它们。

Bokeh提供了一种创建复杂交互式图形的简单方法,使它成为Python数据科学家必备的工具之一。