Python 数据可视化之Bokeh详解


Posted in Python onNovember 02, 2021

安装

要安装此类型,请在终端中输入以下命令。

pip install bokeh

Python 数据可视化之Bokeh详解

散点图

散点图中散景可以使用绘图模块的散射()方法被绘制。这里分别传递 x 和 y 坐标。

例子:

# 导入模块
from bokeh.plotting import figure, output_file, show
from bokeh.palettes import magma
import pandas as pd

# 实例化图形对象
graph = figure(title = "Bokeh Scatter Graph")
# 读取数据库
data = pd.read_csv("tips.csv")
color = magma(256)
# 绘制图形
graph.scatter(data['total_bill'], data['tip'], color=color)
# 展示模型
show(graph)

输出:

Python 数据可视化之Bokeh详解

折线图

例子:

# 导入模块from bokeh.plotting import figure, output_file, showimport pandas as pd# 实例化图形对象graph = figure(title = "Bokeh Bar Chart")# 读取数据库data = pd.read_csv("tips.csv")# 提示列的每个唯一值的计数df = data['tip'].value_counts()# 绘制图形graph.line(df, data['tip'])# 展示模型show(graph)

输出:

Python 数据可视化之Bokeh详解

条形图

条形图可以有水平条和垂直条两种类型。 每个都可以分别使用绘图界面的 hbar() 和 vbar() 函数创建。

例子:

# 导入模块from bokeh.plotting import figure, output_file, showimport pandas as pd# 实例化图形对象graph = figure(title = "Bokeh Bar Chart")# 读取数据库data = pd.read_csv("tips.csv")# 绘制图形graph.vbar(data['total_bill'], top=data['tip'])# 展示模型show(graph)

输出:

Python 数据可视化之Bokeh详解

交互式数据可视化

Bokeh 的主要功能之一是为绘图添加交互性。 让我们看看可以添加的各种交互。

Interactive Legends

click_policy 属性使图例具有交互性。 有两种类型的交互

  • 隐藏:隐藏字形。
  • 静音:隐藏字形使其完全消失,另一方面,静音字形只是根据参数去强调字形。

例子:

# 导入模块
from bokeh.plotting import figure, output_file, show
import pandas as pd

# 实例化图形对象
graph = figure(title = "Bokeh Bar Chart")
# 读取数据库
data = pd.read_csv("tips.csv")
# 绘制图形
graph.vbar(data['total_bill'], top=data['tip'],
		legend_label = "Bill VS Tips", color='green')
graph.vbar(data['tip'], top=data['size'],
		legend_label = "Tips VS Size", color='red')
graph.legend.click_policy = "hide"
# 展示模型
show(graph)

输出:

Python 数据可视化之Bokeh详解

添加小部件

Bokeh 提供了类似于 HTML 表单的 GUI 功能,如按钮、滑块、复选框等。这些为绘图提供了一个交互界面,允许更改绘图参数、修改绘图数据等。让我们看看如何使用和添加一些常用的小部件。

按钮

这个小部件向绘图添加了一个简单的按钮小部件。 我们必须将自定义 JavaScript 函数传递给模型类的 CustomJS() 方法。

复选框

向图中添加标准复选框。与按钮类似,我们必须将自定义 JavaScript 函数传递给模型类的 CustomJS() 方法。

单选按钮

添加一个简单的单选按钮并接受自定义 JavaScript 函数。

例子:

from bokeh.io import show
from bokeh.models import Button, CheckboxGroup, RadioGroup, CustomJS
button = Button(label="GFG")
button.js_on_click(CustomJS(
	code="console.log('button: click!', this.toString())"))
# 复选框和单选按钮的标签
L = ["First", "Second", "Third"]
# 活动参数集默认检查选定的值
checkbox_group = CheckboxGroup(labels=L, active=[0, 2])
checkbox_group.js_on_click(CustomJS(code="""
	console.log('checkbox_group: active=' + this.active, this.toString())
"""))
# 活动参数集默认检查选定的值
radio_group = RadioGroup(labels=L, active=1)
radio_group.js_on_click(CustomJS(code="""
	console.log('radio_group: active=' + this.active, this.toString())
"""))
show(button)
show(checkbox_group)
show(radio_group)

输出:

Python 数据可视化之Bokeh详解

Python 数据可视化之Bokeh详解

Python 数据可视化之Bokeh详解

注意: 所有这些按钮都将在新选项卡上打开。

滑块: 向绘图添加一个滑块。 它还需要一个自定义的 JavaScript 函数。

示例:

from bokeh.io import show
from bokeh.models import CustomJS, Slider
slider = Slider(start=1, end=20, value=1, step=2, title="Slider")
slider.js_on_change("value", CustomJS(code="""
	console.log('slider: value=' + this.value, this.toString())
"""))
show(slider)

输出:

Python 数据可视化之Bokeh详解

同样,更多的小部件可用,如下拉菜单或选项卡小部件可以添加。

下一节我们继续谈第四个库—— Plotly

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注三水点靠木的更多内容!

Python 相关文章推荐
在Python的Flask框架下使用sqlalchemy库的简单教程
Apr 09 Python
Python编程中对文件和存储器的读写示例
Jan 25 Python
Python自动化部署工具Fabric的简单上手指南
Apr 19 Python
Windows平台Python连接sqlite3数据库的方法分析
Jul 12 Python
Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例
May 21 Python
使用python实现快速搭建简易的FTP服务器
Sep 12 Python
Python单元测试unittest的具体使用示例
Dec 17 Python
python对文件目录的操作方法实例总结
Jun 24 Python
python根据文本生成词云图代码实例
Nov 15 Python
python读取dicom图像示例(SimpleITK和dicom包实现)
Jan 16 Python
python range实例用法分享
Feb 06 Python
python中数字是否为可变类型
Jul 08 Python
Python 数据可视化之Matplotlib详解
分位数回归模型quantile regeression应用详解及示例教程
Python常遇到的错误和异常
Nov 02 #Python
Python 数据可视化之Seaborn详解
关于python中模块和重载的问题
pandas中对文本类型数据的处理小结
Nov 01 #Python
Python游戏开发实例之graphics实现AI五子棋
You might like
php htmlspecialchars加强版
2010/02/16 PHP
php 高效率写法 推荐
2010/02/21 PHP
『PHP』PHP截断函数mb_substr()使用介绍
2013/04/22 PHP
基于php设计模式中工厂模式详细介绍
2013/05/15 PHP
从PHP的源码中深入了解stdClass类
2014/04/18 PHP
php实现数字补零的方法总结
2018/09/12 PHP
点击下载链接 弹出页面实现代码
2009/10/01 Javascript
再谈javascript 动态添加样式规则 W3C校检
2009/12/25 Javascript
JS中动态添加事件(绑定事件)的代码
2011/01/09 Javascript
jQuery 获取和设置select下拉框的值实现代码
2013/11/08 Javascript
让JavaScript和其它资源并发下载的方法
2014/10/16 Javascript
javascript引用赋值(地址传值)用法实例
2015/01/13 Javascript
jQuery中的pushStack实现原理和应用实例
2015/02/03 Javascript
介绍JavaScript的一个微型模版
2015/06/24 Javascript
JavaScript小技巧整理
2015/12/30 Javascript
javascript监听页面刷新和页面关闭事件方法详解
2017/01/09 Javascript
jQuery插件echarts实现的多柱子柱状图效果示例【附demo源码下载】
2017/03/04 Javascript
JavaScript仿微信打飞机游戏
2020/07/05 Javascript
webpack使用 babel-loader 转换 ES6代码示例
2017/08/21 Javascript
微信小程序自定义对话框弹出和隐藏动画
2018/07/19 Javascript
Cocos2d实现刮刮卡效果
2018/12/20 Javascript
Koa 中的错误处理解析
2019/04/09 Javascript
[14:19]2018年度COSER大赛-完美盛典
2018/12/16 DOTA
Python安装Imaging报错:The _imaging C module is not installed问题解决方法
2014/08/22 Python
Python使用BeautifulSoup库解析HTML基本使用教程
2016/03/31 Python
python如何在终端里面显示一张图片
2016/08/17 Python
flask框架使用orm连接数据库的方法示例
2018/07/16 Python
HTML5 拖拽批量上传文件的示例代码
2018/03/28 HTML / CSS
HTML5实现应用程序缓存(Application Cache)
2020/06/16 HTML / CSS
浅析HTML5 meta viewport参数
2020/10/28 HTML / CSS
英国100%防污和防水的靴子:Muck Boot Company
2020/09/08 全球购物
小学教研工作制度
2014/01/15 职场文书
小班开学寄语
2014/04/04 职场文书
2014年少先队工作总结
2014/12/03 职场文书
成绩单家长意见
2015/06/03 职场文书
如何用JavaScipt测网速
2021/05/09 Javascript