Python 数据可视化:Bokeh 初体验

2020-12-07  本文已影响0人  you的日常

岛国,在我朝的东边,我朝臣民对它的心态可以说比较复杂了。就软件领域而言,它的存在感貌似不大,其实不然。就拿国内的一些大厂,有不少其背后会有一家岛国公司身影——软银。岛国技术人员为开源领域的贡献,也同样精彩,比如很有名的 Ruby 语言,发明者为 Yukihiro Matsumoto,是一名岛国程序员。本课要介绍的 Bokeh 也是岛国程序员发明的,专用于数据可视化。

维基百科的词条 Bokeh 介绍了这个词的读音和含义,也可以不用理会什么含义,就当做一个名称罢了。

6.1.1 精彩一瞥

Bokeh 跟前面已经介绍过的 Plotly 和 pyecharts 类似,都是生成基于网页的可视化图示,并且也具有交互性。

起手要做的肯定是安装了。

pip3 install bokeh

这是最简单的安装方式,如果不能安装,可以直接从 GitHub 上下载。

安装好之后,可以运行 jupyter notebook,之后执行下面的程序,通过示例体验一下 Bokeh 的应用。

import numpy as np
from bokeh.plotting import figure, output_file, show    # ①

x = np.linspace(0, 2*np.pi, 50)
y = np.sin(x)

fig = figure(plot_width = 800, plot_height = 600, 
             title = 'sin line', 
             y_axis_label = 'y', x_axis_label = 'x')    # ②
fig.line(x, y, line_width = 2, legend = 'sin')    # ③

output_file('./sin.html')    # ④
show(fig)    # ⑤

执行这段程序之后,会自动打开一个网页,并且网页文件的名称为“sin.html”。

image

上述结果与前面介绍过的 Plotly 和 pyecharts 一样。当然,Bokeh 也有自己的特点,后续就能了解到,这里先简要地理解一下上面的程序。

Plotly 和 pyecharts 都能将 HTML 中的图嵌入到当前正在运行的 Jupyter 浏览器中,Bokeh 有这个功能吗?

这个可以有!

from bokeh.io import output_notebook
output_notebook()

引入 output_notebook 之后,执行 output_notebook(),用它替代 ④。执行之后,结果如下图所示。

image

此后在执行第一段程序,则代码块之下就能插入图示对象。

除了能够绘制一条曲线之外,在同一个坐标系中绘制多条曲线也是很容易的事情。

上一篇下一篇

猜你喜欢

热点阅读