http://bokeh.pydata.org/en/latest

Bokeh

是一个专门针对Web浏览器的呈现功能的交互式可视化Python库。这是Bokeh与其它可视化库最核心的区别。

  • 专门针对Web浏览器的交互式、可视化Python绘图库

  • 可以做出像D3.js简洁漂亮的交互可视化效果,但是使用难度低于D3.js。

  • 独立的HTML文档或服务端程序

  • 可以处理大量、动态或数据流

  • 支持Python (或Scala, R, Julia…)

  • 不需要使用Javascript

Bokeh接口

  • Charts: 高层接口,以简单的方式绘制复杂的统计图

  • Plotting: 中层接口,用于组装图形元素

  • Models: 底层接口,为开发者提供了最大的灵活性

包引用

  1. from bokeh.io import output_notebook, output_file, show
  2. from bokeh.charts import Scatter, Bar, BoxPlot, Chord
  3. from bokeh.layouts import row
  4. import seaborn as sns
  5.  
  6. # 导入数据
  7. exercise = sns.load_dataset('exercise')
  8.  
  9. output_notebook()
  10. #output_file('test.html')
  • from bokeh.io import output_file 生成.html文档

  • from boken.io import output_notebook 在jupyter中使用

bokeh.charts

http://bokeh.pydata.org/en/latest/docs/reference/charts.html

散点图 Scatter

示例代码:

  1. # 散点图
  2. p = Scatter(data=exercise, x='id', y='pulse', title='exercise dataset')
  3. show(p)

运行结果:

柱状图 Bar

示例代码:

  1. # 柱状图
  2. p = Bar(data=exercise, values='pulse', label='diet', stack='kind', title='exercise dataset')
  3. show(p)

运行结果:

盒子图 BoxPlot

示例代码:

  1. # 盒子图
  2. box1 = BoxPlot(data=exercise, values='pulse', label='diet', color='diet', title='exercise dataset')
  3. box2 = BoxPlot(data=exercise, values='pulse', label='diet', stack='kind', color='kind', title='exercise dataset')
  4. show(row(box1, box2))

运行结果:

弦图 Chord

• 展示多个节点之间的联系

• 连线的粗细代表权重

示例代码:

  1. # 弦图 Chord
  2. chord1 = Chord(data=exercise, source="id", target="kind")
  3. chord2 = Chord(data=exercise, source="id", target="kind", value="pulse")
  4.  
  5. show(row(chord1, chord2))

运行结果:

bokeh.plotting

方框 square, 圆形 circle

示例代码:

  1. from bokeh.plotting import figure
  2. import numpy as np
  3.  
  4. p = figure(plot_width=400, plot_height=400)
  5. # 方框
  6. p.square(np.random.randint(1,10,5), np.random.randint(1,10,5), size=20, color="navy")
  7.  
  8. # 圆形
  9. p.circle(np.random.randint(1,10,5), np.random.randint(1,10,5), size=10, color="green")
  10. show(p)

运行结果:

更多图形元素参考:http://bokeh.pydata.org/en/latest/docs/reference/plotting.html

Bokeh绘图的更多相关文章

  1. 吴裕雄--天生自然python学习笔记:python的Bokeh 基本绘图

    使用 Bokeh 绘图时,其大部分绘图功能是由 bokeh plotting 完成的,所以我们一 般至少要导入自gure 及 show 这两个函数 : Bokeh 绘制的图形是在浏览器中显示的, 创建 ...

  2. 干货 | Bokeh交互式数据可视化快速入门

    Bokeh简介 Bokeh是一款交互式可视化库,在浏览器上进行展示. Bokeh可以通过Python(或其它语言),快速便捷地为大型流数据集提供优雅简洁的高性能交互式图表. 安装 在python中有多 ...

  3. 一个交互式可视化Python库——Bokeh

    本篇为<Python数据可视化实战>第十篇文章,我们一起学习一个交互式可视化Python库--Bokeh. Bokeh基础 Bokeh是一个专门针对Web浏览器的呈现功能的交互式可视化Py ...

  4. Python 绘图 - Bokeh 柱状图小试(Stacked Bar)

    背景 在 Bokeh 初探之后,学习使用它来做个图 目标 做一个柱状图,支持多个 y 数据源,即有堆叠效果的柱状图 stacked bar 实现 单数据源 简单的柱状图 参考 Handling Cat ...

  5. Python交互图表可视化Bokeh:7. 工具栏

    ToolBar工具栏设置 ① 位置设置② 移动.放大缩小.存储.刷新③ 选择④ 提示框.十字线 1. 位置设置 import numpy as np import pandas as pd impor ...

  6. Python交互图表可视化Bokeh:6. 轴线| 浮动| 多图表

    绘图表达进阶操作 ① 轴线设置② 浮动设置③ 多图表设置 1. 轴线标签设置 设置字符串 import numpy as np import pandas as pd import matplotli ...

  7. Python交互图表可视化Bokeh:5 柱状图| 堆叠图| 直方图

    柱状图/堆叠图/直方图 ① 单系列柱状图② 多系列柱状图③ 堆叠图④ 直方图 1.单系列柱状图 import numpy as np import pandas as pd import matplo ...

  8. Python交互图表可视化Bokeh:4. 折线图| 面积图

    折线图与面积图 ① 单线图.多线图② 面积图.堆叠面积图 1. 折线图--单线图 import numpy as np import pandas as pd import matplotlib.py ...

  9. Python交互图表可视化Bokeh:3. 散点图

    散点图 ① 基本散点图绘制② 散点图颜色.大小设置方法③ 不同符号的散点图 1. 基本散点图绘制 import numpy as np import pandas as pd import matpl ...

随机推荐

  1. cenOs7安装redis

    1.安装redis redis 目前没有官方 RPM 安装包,我们需要从源代码编译,而为了要编译就需要安装 Make 和 GCC. 如果没有安装过 GCC 和 Make,那么就使用 yum 安装 -- ...

  2. sha1加密

    SHA-1是一种数据加密算法,该算法的思维是接纳一段明文,然后以一种不可逆的方式将它转换成一段(一般更小)密文, 也能够简略的理解为取一串输入码(称为预映射或信息),并把它们转化为长度较短.位数固定的 ...

  3. react: redux-devTools

    import {composeWithDeTools} from 'redux-devtools-extension'; const bindMiddleware = middleware => ...

  4. 剑指offer--35.数组中只出现一次的数字

    时间限制:1秒 空间限制:32768K 热度指数:198150 本题知识点: 数组 题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字. class ...

  5. Django与数据库操作

    Django与数据库操作 数据库连接的方法 web 框架 django --- 自己内部实现 (ORM) + pymysql(连接) Flask,tornado --- pymysql SQLArch ...

  6. Helix Server流媒体服务器架设教程(附Helix Server11.01下载)

    现在D版的远古影视系统很流行,也很实用,但是在这之前,很多人都是用共享,或者是使用Helix Server留媒体来做电影服务器~ 虽然Helix Server流媒体服有点落伍了,不过我相信它还是有用武 ...

  7. 前端之JavaScript 补充

    1. BOM window location.href = "https://www.sogo.com" location.reload() // 重新加载当前页 location ...

  8. (三)js循环结构

    1.循环结构 a)    当循环 语法:while(condition){         code...     }     do(){         code...     } while(); ...

  9. python之懒惰属性(延迟初始化)

    Python 对象的延迟初始化是指,当它第一次被创建时才进行初始化,或者保存第一次创建的结果,然后每次调用的时候直接返回该结果.延迟初始化主要用于提高性能,避免浪费计算,并减少程序的内存需求. 1. ...

  10. lvds配置

    基于Altera FPGA的LVDS配置应用一例 在特权同学发表博文<Cyclone III的LVDS接口注意事项>后,不少网友发邮件询问LVDS具体应用的一些问题.这些网友,归根到底,估 ...