Python 中的 Bokeh 简介

pythonserver side programmingprogramming

Python 提供了许多数据可视化模块,以满足日益增长的需求。Bokeh 在其中脱颖而出,因为它能够开发引人入胜的故事。本文介绍了 Bokeh,详细介绍了如何安装它,列出了它的功能,并深入研究了实际应用程序以突出其强大的可能性。

了解 Bokeh

一个名为 Bokeh 的 Python 包使创建可扩展且交互式的可视化效果以在 Web 浏览器中使用变得更加容易。由于其适应性,Bokeh 是各种行业的有效工具,包括工程、金融和数据科学。

安装 Bokeh

如果您的 Python 环境尚未安装 Bokeh,则可以使用 pip 命令安装它:

pip install bokeh

Bokeh 动手实践:实际示例

为了更好地理解如何使用 Bokeh 构建交互式图表,让我们深入研究一些实际示例。

示例 1:创建简单的线图

在 Bokeh 中,可以使用 figure 函数和 line 技术来生成简单的线图。以下是一个示例:

from bokeh.plotting import figure, show

# 示例数据
x = [1, 2, 3, 4, 5]
y = [6, 7, 2, 3, 6]

# 创建新图
p = figure(title="简单线条示例", x_axis_label='x', y_axis_label='y')

# 添加线条渲染器
p.line(x, y, legend_label="Temp.", line_width=2)

# 显示结果
show(p)

示例 2:使用 Bokeh 绘制散点图

此外,bokeh 还提供了一种绘制散点图的简单方法。以下是操作方法:

from bokeh.plotting import figure, show
from bokeh.models import HoverTool

# 示例数据
x = [1, 2, 3, 4, 5]
y = [6, 7, 8, 7, 3]

# 创建新图
p = figure(title="简单散点图示例", x_axis_label='x', y_axis_label='y', tools="hover,pan,reset,wheel_zoom")

# 添加悬停工具
hover = p.select(dict(type=HoverTool))
hover.tooltips = [("Index", "$index"), ("(x,y)", "($x, $y)"),]

# 添加圆形渲染器
p.circle(x, y, size=10, alpha=0.5)

# 显示结果
show(p)

Bokeh 提供的众多交互式工具之一是 HoverTool,此示例包含该工具。

示例 3:使用 Bokeh 的条形图

Bokeh 可以生成条形图和其他不同类型的图表。这是一个简单的例子:

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

# 准备一些数据
data = {'fruits': ['Apples', 'Pears', 'Nectarines', 'Plums', 'Grapes', 'Strawberries'], 'counts': [5, 3, 4, 2, 4, 6]}
source = ColumnDataSource(data=data)

# 创建一个新图
p = figure(x_range=data['fruits'], plot_height=250,toolbar_location=None, title="Fruit Counts")

# 添加条形渲染器
p.vbar(x='fruits', top='counts', width=0.9, source=source, legend_label="fruits")

# 自定义图表
p.xgrid.grid_line_color = None
p.y_range.start = 0
p.y_range.end = 9
p.legend.orientation = "horizo​​ntal"
p.legend.location = "top_center"

# 显示结果
show(p)

在此图中,我们制作了一个简单的垂直条形图来显示各种水果的数量。水果类型在 x 轴上表示,而其数量显示在 y 轴上。使用 Bokeh 的 ColumnDataSource 可以更轻松地在众多图表和小部件之间传输数据。

结论

在 Python 生态系统中,Bokeh 是构建复杂且交互式可视化的重要工具。数据分析师和科学家之所以喜欢它,是因为它能够管理庞大的数据集并生成高质量的可视化效果。

本页提供了 Bokeh 的基本概述,但只是触及了可能性。Bokeh 还提供许多其他功能,例如流数据、不同区域的地图以及利用 Bokeh 服务器构建完全交互式数据应用程序的能力。

学习 Bokeh 为强大的数据叙述和显示铺平了道路。与任何工具一样,练习和试验各种绘图类型和 Bokeh 的交互式功能是学习如何有效使用它的最佳方式。


相关文章