Bokeh —— 一个强大的可视化 Python 库

写代码可能是程序员的强项,但对于可视化数据,特别是可交互式的数据可视化,还是挺挠头的。

想象一下,如果你能够创建一个交互式的图表,让观众通过滑动条或按钮来探索数据的不同维度,这不仅能提升报告的专业度,同时也能让你的观众更加投入。

幸运的是,Bokeh(发音为“boh-kay”)为这样的需求提供了完美的解决方案。

探索 Bokeh 的魅力

Bokeh 是一个强大的 Python 可视化库,它让数据分析师和开发者能够轻松创造交互式图表、应用和仪表板。

由于 Bokeh 专为现代网络浏览器设计,因此它可以在 Web 页面上带来高性能的交互体验,这让它在数据可视化领域独树一帜。

Bokeh 是由 Continuum Analytics 创立,并且一直作为一个开源项目在不断发展。

与 Matplotlib 这样的库不同,Bokeh 不仅仅停留在创建静态图表的层面,而是支持丰富的网页端交互功能。

而与另一个可视化库 Plotly 相比,则具有更强的灵活性和开源社区的驱动,没有商业使用的限制。

目前 Bokeh 支持 Python 3.6 及其以上的版本,能够完美地应用于大数据集的可视化、实时数据更新以及综合的服务器端页面嵌入。

项目地址:https://bokeh.org/

安装 Bokeh

要开始使用 Bokeh,你只需通过 pip 或者 conda 安装即可。简洁明了的安装步骤也体现出了 Bokeh 用户友好的特质。

# 使用  pip  安装    pip install bokeh      # 使用  conda  安装    conda install bokeh   

具体的安装细节可以参考 官方安装指南[1]。

基本功能

让我们来看看 Bokeh 提供的一些基础功能。

创建图表

使用 Bokeh,我们可以快速地创建各种图表,比如条形图、折线图、散点图等等。下面是一个简单的折线图示例:

from bokeh.plotting import figure, show      # 准备数据    x = [1, 2, 3, 4, 5]   y = [6, 7, 2, 4, 5]      # 创建图表    p = figure(title="simple line example", x_axis_label='x', y_axis_label='y')      # 添加折线图    p.line(x, y, legend_label="Temp.", line_width=2)      # 展示图表    show(p)   

这段代码运行后,将打开一个页面展示简单的折线图。

交互式元素

Bokeh 可以添加滑动条、按钮等交互式元素, 允许用户在浏览器中与图表进行实时交互。

from bokeh.layouts import layout   from bokeh.models import Div, RangeSlider, Spinner   from bokeh.plotting import figure, show      # 准备数据   x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]   y = [4, 5, 5, 7, 2, 6, 4, 9, 1, 3]      # 创建图表   p = figure(x_range=(1, 9), width=500, height=250)   points = p.circle(x=x, y=y, size=30, fill_color="#21a7df")      # 设置文本区域   div = Div(       text="""             <p>Select the circle's size using this control element:</p>             """,       width=200,       height=30,   )      # 设置选项   spinner = Spinner(       title="Circle size",       low=0,       high=60,       step=5,       value=points.glyph.size,       width=200,   )   spinner.js_link("value", points.glyph, "size")      # 设置滑块   range_slider = RangeSlider(       title="Adjust x-axis range",       start=0,       end=10,       step=1,       value=(p.x_range.start, p.x_range.end),   )   range_slider.js_link("value", p.x_range, "start", attr_selector=0)   range_slider.js_link("value", p.x_range, "end", attr_selector=1)      # 创建样式   layout = layout(       [           [div, spinner],           [range_slider],           [p],       ],   )      # 显示结果   show(layout)   

高级功能

自定义样式

使用 Bokeh 主题,可以快速设置图表的样式,例如:

from bokeh.io import curdoc   from bokeh.plotting import figure, show      # 准备数据   x = [1, 2, 3, 4, 5]   y = [4, 5, 5, 7, 2]      # 添加主题   curdoc().theme = "dark_minimal"      # 创建图表   p = figure(sizing_mode="stretch_width", max_width=500, height=250)      # 添加元素   p.line(x, y)      # 显示结果   show(p)   

效果如下:

更多用法和功能请参考项目文档[2],文档中不仅有详细说明还有丰富的例子可供参考。

实践

为了更好地掌握 Bokeh,你可以尝试创建一个包含多种图表并带有交互元件的小仪表板。

记得分享你的作品和总结你在构建过程中的体会和所遇到的挑战。

以上就是“Bokeh —— 一个强大的可视化 Python 库”的全部内容,希望对你有所帮助。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、Python必备开发工具

img

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

五、Python练习题

检查学习结果。

img

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

img

最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值