Python 使用Bokeh创建带有多个Glyphs的图表
Bokeh是Python中的一个强大的数据可视化库,可以帮助我们创建互动性和独特性的网络可视化。Bokeh支持多种渲染技术,并提供了各种内置工具,用于创建包含多个Glyphs的复杂可视化。本文将指导您如何使用Bokeh创建带有多个Glyphs的图表。这个图表结合了不同的Glyphs,以在一个图表中显示多个数据系列,更有效地理解不同变量之间的关系。
什么是Glyphs以及它们的主要优点是什么
Glyphs是用于排版和图形设计中的字符、符号或图标的图形表示。它们经常用于文本的设计和布局,可以包括字母、数字、标点符号和其他符号。
使用Glyphs的一些主要优点包括:
- 提高可读性 - Glyphs可以设计得非常易读,使读者可以快速准确地理解文本。
-
增强美观性 - Glyphs可以用于为文本增加视觉趣味和吸引力,使其更具视觉吸引力和互动性。
-
一致性和准确性 - Glyphs可以被设计成在大小、形状和样式上保持一致,确保文本易于阅读和视觉协调。
-
灵活性 - Glyphs可以很容易地进行缩放和修改,使其可以在各种环境和应用中使用。
-
国际化 - Glyphs可以用于表示各种语言和书写系统中的字符和符号,使其在国际化和本地化方面非常有用。
总的来说,Glyphs是排版和图形设计的强大工具,可以提高文本的可读性、美观性、一致性和灵活性。
这些的统计学意义
Glyphs本身不受统计学的显著性测试影响,因为它们不是统计数据。然而,如果Glyphs在涉及统计分析的实验或研究中使用,那么它们在排版和图形设计中的使用可能会受到统计学显著性测试的影响。例如,如果一项研究正在检验不同字体对阅读速度或理解力的影响,统计测试可以用来确定观察到的字体之间的任何差异是否具有统计学显著性。
一般而言,统计学显著性测试用于确定观察到的差异或效应是否可能是由于偶然或随机变异,还是是否可能反映了正在研究的人群中的真实差异或效应。所使用的具体测试取决于研究问题、分析的数据类型以及对数据和人群的假设。
因此,虽然Glyphs本身不受统计学显著性测试的影响,但它们可能被用于进行统计分析的实验或研究的背景中,以确定观察到的差异或效应是否具有统计学意义。
先决条件
在我们深入了解任务之前,需要将以下内容安装到您的系统上:
推荐的设置列表:
- pip install pandas, bokeh
-
预期用户将可以访问任何独立的集成开发环境,如VS-Code、PyCharm、Atom或Sublime Text。
-
甚至可以使用在线Python编译器,如Kaggle.com,Google Cloud平台或其他任何平台。
-
更新了Python的版本。在编写本文时,我使用的是3.10.9版本。
-
对Jupyter笔记本的使用有一定的了解。
-
知识和应用虚拟环境将是有益的,但不是必需的。
-
也希望该人对统计学和数学有良好的理解。
创建基本图形
要创建图形,我们首先需要导入必要的模块,如“Figure”、“ColumnDataSource”和所需的标志。以下是一个使用Bokeh创建带有单个标志的线性图的示例代码段−
语法
from bokeh.plotting import figure, output_file, show
output_file("line.html")
p = figure(title="Line Plot", x_axis_label="X", y_axis_label="Y")
x = [1, 2, 3, 4, 5]
y = [6, 7, 2, 4, 5]
p.line(x, y, line_width=2)
show(p)
输出
这段代码将创建一个线图,其中x轴标记为“X”,y轴标记为“Y”,并有一个标题“Line Plot”。线图将显示五个数据点,其中包括它们对应的x和y值。
向图表中添加多个几何图形
要向图表中添加多个几何图形,我们需要使用Figure
对象的multi_line()
函数。multi_line()
函数接收多个x和y值序列,并为每个序列创建一个线图形。以下是示例代码片段,用于创建具有多个几何图形的线图-
from bokeh.plotting import figure, output_file, show
from bokeh.models import ColumnDataSource
output_file("multi_line.html")
p = figure(title="Multiple Glyphs", x_axis_label="X", y_axis_label="Y")
x1 = [1, 2, 3, 4, 5]
y1 = [6, 7, 2, 4, 5]
x2 = [1, 2, 3, 4, 5]
y2 = [2, 4, 6, 8, 10]
source = ColumnDataSource(data=dict(x1=x1, y1=y1, x2=x2, y2=y2))
p.multi_line(xs=[source.data["x1"], source.data["x2"]],
ys=[source.data["y1"], source.data["y2"]],
line_color=["red", "blue"], line_width=[2, 2])
show(p)
输出
在这里,我们创建了两组x和y值,并将它们存储在ColumnDataSource
对象中。然后,我们将两个x和y值序列与两个glyph的颜色和线宽一起传递给multi_line()
函数。这将创建一个带有两个glyph的线图,一个红色和一个蓝色,每个都有对应的x和y值。
最终代码
# Basic plot
from bokeh.plotting import figure, output_file, show
output_file("line.html")
p = figure(title="Line Plot", x_axis_label="X", y_axis_label="Y")
x = [1, 2, 3, 4, 5]
y = [6, 7, 2, 4, 5]
p.line(x, y, line_width=2)
show(p)
# Multiple graphs
from bokeh.plotting import figure, output_file, show
from bokeh.models import ColumnDataSource
output_file("multi_line.html")
p = figure(title="Multiple Glyphs", x_axis_label="X", y_axis_label="Y")
x1 = [1, 2, 3, 4, 5]
y1 = [6, 7, 2, 4, 5]
x2 = [1, 2, 3, 4, 5]
y2 = [2, 4, 6, 8, 10]
source = ColumnDataSource(data=dict(x1=x1, y1=y1, x2=x2, y2=y2))
p.multi_line(xs=[source.data["x1"], source.data["x2"]],
ys=[source.data["y1"], source.data["y2"]],
line_color=["red", "blue"], line_width=[2, 2])
show(p)
结论
在本文档中,我们学习了如何使用Bokeh创建具有多个图元的绘图。我们从图元的介绍开始,然后创建了一个带有单个图元的基本线形图。接着,我们使用Figure
对象的multi_line()
函数向绘图中添加了多个图元。使用Bokeh,可以轻松创建交互式可视化图表,帮助理解不同数据点之间的关系。Bokeh允许您轻松创建漂亮的可视化图表,而无需过多关注可视化而可以专注于数据分析。