美文网首页
Python 数据可视化:Bokeh 初体验

Python 数据可视化:Bokeh 初体验

作者: you的日常 | 来源:发表于2020-12-07 17:16 被阅读0次

    岛国,在我朝的东边,我朝臣民对它的心态可以说比较复杂了。就软件领域而言,它的存在感貌似不大,其实不然。就拿国内的一些大厂,有不少其背后会有一家岛国公司身影——软银。岛国技术人员为开源领域的贡献,也同样精彩,比如很有名的 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 也有自己的特点,后续就能了解到,这里先简要地理解一下上面的程序。

    • ① 引入程序中需要的模块。
    • ② 中使用 figure 创建一个图示实例对象。figure 其实是 Bokeh 中的类 Figure 的简单封装,用于初始化图示对象,默认情况下会包含坐标系的坐标轴、坐标网格,以及图示右侧的有关工具等。
    • ③ 调用了 fig 对象的一个方法 fig.line,意即绘制曲线。
    • ④ 使用 output_file 设置输出文件名称,如果不写此句,Bokeh 会默认一个名称。
    • ⑤ 的效果则是要显示所绘制的图示对象。

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

    这个可以有!

    from bokeh.io import output_notebook
    output_notebook()
    
    

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

    image

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

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

    相关文章

      网友评论

          本文标题:Python 数据可视化:Bokeh 初体验

          本文链接:https://www.haomeiwen.com/subject/lulebktx.html