bokeh开始使用散景


备注

Bokeh是一个Python交互式可视化库,面向现代Web浏览器进行演示。它的目标是以D3.js的风格提供优雅,简洁的新颖图形构造,并通过非常大或流数据集的高性能交互扩展此功能。

Bokeh可以帮助任何想要快速轻松地创建交互式图表,仪表板和数据应用程序的人。

你好,世界

要使用散景,您需要启动散景服务器并使用浏览器连接到它。我们将使用此示例脚本( hello_world.py ):

from bokeh.models import ColumnDataSource
from bokeh.plotting import figure
from bokeh.io import curdoc

def modify_doc(doc):
    """Add a plotted function to the document.

    Arguments:
        doc: A bokeh document to which elements can be added.
    """
    x_values = range(10)
    y_values = [x ** 2 for x in x_values]
    data_source = ColumnDataSource(data=dict(x=x_values, y=y_values))
    plot = figure(title="f(x) = x^2",
                  tools="crosshair,pan,reset,save,wheel_zoom",)
    plot.line('x', 'y', source=data_source, line_width=3, line_alpha=0.6)
    doc.add_root(plot)
    doc.title = "Hello World"

def main():
    modify_doc(curdoc())
    
main()
 

要启动它,您需要在命令行上执行散景并使用serve 命令启动服务器:

$ bokeh serve --show hello_world.py
 

--show 参数告诉bokeh打开浏览器窗口并显示hello_world.py 定义的文档。

安装散景

Bokeh的安装文档

Bokeh在Python上运行,它具有以下依赖关系;

NumPy, Jinja2, Six, Requests, Tornado >= 4.0, PyYaml, DateUtil

如果您计划使用Python 2.7进行安装,那么您将需要future

所有这些都附带Anaconda Python Distribution 。您可以免费下载和安装。

一旦将anaconda安装到您的计算机上,您就可以在Windows上的cmd.exe或Mac上的终端上运行以下命令:

conda install bokeh
 

如果您已有Python版本,则可以在Windows上的cmd.exe或Mac上的终端上运行以下命令:

pip install bokeh
 

请务必查看Bokeh 快速入门指南,了解几个示例。

在Jupyter笔记本中使用Bokeh

这是一个如何在Jupyter Notebook中使用Bokeh的简单示例:

import numpy as np
from bokeh.plotting import figure
# Make Bokeh Push push output to Jupyter Notebook.
from bokeh.io import push_notebook, show, output_notebook
from bokeh.resources import INLINE
output_notebook(resources=INLINE)

# Create some data.
x = np.linspace(0,2*np.pi,20)
y = np.sin(x)

# Create a new plot with a title and axis labels
p = figure(title="Simple Line Plot in Bokeh", x_axis_label='x', y_axis_label='y')

# Add a line renderer with legend and line thickness
p.line(x, y, legend="Value", line_width=3)

# Show the results
show(p)