首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

上手Bokeh/交互式数据可视化库Bokeh的快速入门

Bokeh是一款针对现代Web浏览器呈现功能的交互式可视化库。Bokeh通过Python(或其他语言)以快速简单的方式为超大型或流式数据集提供高性能交互的漂亮而且结构简单的多功能图形。

为了提供高级自定义所需的简单性和强大而灵活的功能,Bokeh向用户公开了两个接口级别:

bokeh.models

为应用程序开发人员提供的最灵活的一个底层接口。

bokeh.plotting

以构成可视符号为中心的一个高层接口。

以下内容侧重于bokeh.plotting接口。

安装

安装Bokeh有多种方式,我们推荐使用Anaconda Python distribution,并在Bash或Windows命令提示符下输入以下命令:

conda install bokeh

(开始菜单-Anaconda文件夹-Anaconda Prompt,直接输入以上命令即可)

如果你已经安装了所有需要的依赖项(如NumPy),也可以在命令行中使用pip:

pip install bokeh

入门

Bokeh是一个包含很多功能的大型库,因此本节只是对一些常见Bokeh用例的快速浏览。

我们从一些例子开始。

现在画一个折线图,图表页面包含缩放,平移,保存等功能。代码如下:

from bokeh.plotting import figure, output_file, show

# 准备数据

x = [1, 2, 3, 4, 5]

y = [6, 7, 2, 4, 5]

# 输出html文件

output_file("lines.html")

# 创建一个带有标题和轴标签的图表

p = figure(title="simple line example", x_axis_label='x', y_axis_label='y')

# 添加一个带有图例和线条粗细的线条渲染器

p.line(x, y, legend="Temp.", line_width=2)

# 展示结果

show(p)

当执行这个脚本时,会看到创建了一个新的输出文件“lines.html”,浏览器还会自动打开一个新的标签来显示它。

在新的标签页,图表右侧有几个小图标,分别代表平移,选框缩放,滚轮缩放,保存,重置等。

画图步骤

准备数据

示例中是Python列表,也可以是NumPy数组或Pandas系列。

输出html文件

示例中使用output_file(),文件名为“lines.html”。在Jupyter notebooks中也可以使用output_notebook()。

调用figure()

这一步将创建一个具有典型默认选项的图形,并可轻松定制标题,工具和坐标轴标签。

添加渲染器

在示例中,我们使用line()制作折线图,渲染器可以自定义视觉,包括颜色,图例,宽度等。

显示(show())或保存(save())结果

这些功能将HTML绘图保存到文件中、显示在浏览器中。

如果我们需要通过添加更多的数据系列,符号,对数坐标轴等等来更多地定制输出,那么bokeh.plotting接口也非常方便。 如下代码,可以轻松制作组合图表:

from bokeh.plotting import figure, output_file, show

# 准备数据

x = [0.1, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0]

y0 = [i**2 for i in x]

y1 = [10**i for i in x]

y2 = [10**(i**2) for i in x]

# 输出html文件

output_file("log_lines.html")

# 创建图表

p = figure(

tools="pan,box_zoom,reset,save",

y_axis_type="log", y_range=[0.001, 10**11], title="log axis example",

x_axis_label='sections', y_axis_label='particles'

)

# 添加渲染器

p.line(x, x, legend="y=x")

p.circle(x, x, legend="y=x", fill_color="white", size=8)

p.line(x, y0, legend="y=x^2", line_width=3)

p.line(x, y1, legend="y=10^x", line_color="red")

p.circle(x, y1, legend="y=10^x", fill_color="red", line_color="red", size=6)

p.line(x, y2, legend="y=10^x^2", line_color="orange", line_dash="4 4")

# 展示结果

show(p)

Jupyter Notebooks默认工作目录的修改

安装Anaconda后,开始菜单-Anaconda文件夹-Jupyter Notebooks,打开Jupyter Notebooks后,首页显示就是默认的工作目录,但很大概率上并不是我们想要的,所以,介绍一下修改方法。

1.开始菜单-Anaconda文件夹-Anaconda Prompt,输入jupyter notebook --generate-config。

2.在个人用户文件夹下找到.Jupyter文件夹,打开可以看到jupyter_notebook_config.py文件。

3.用记事本或编辑器打开py文件,找到#c.NotebookApp.notebook_dir = '',将这句话前面的“#”去掉,并改为c.NotebookApp.notebook_dir = 'D:\ProgramData\Jupyter',单引号里面的路径是我的工作空间,根据自己需要修改,这个文件夹需要自己提前新建好。

4.保存py文件,重启Jupyter Notebooks。

接下来,就可以看到一个非常干净的页面啦。

写在最后

希望今天的几个小例子能缓解下大家的无聊,以及感受一下Bokeh的炫酷。最后一部分是关于修改Jupyter Notebooks的默认工作目录,过程中遇到了一点儿小坑,分享一下。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180401A0S8GL00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券