在制作绘图所需的所有设置和代码编写完成之后,在本地运行 Bokeh 服务器非常简单。 我们打开一个命令行界面(我更喜欢 Git Bash, 但任何一个都可以工作),切换到包含 bokeh_app 的目录并运行 bokeh serve --show bokeh_app 。 假设一切都正确,应用程序将在我们的浏览器中自动打开地址 http:// localhost:5006 / bokeh_app 。 然后我们可以访问该应用程序并浏览我们的仪表板,效果如下:
在 Jupyter Notebook 中进行调试如果出现问题(因为毫无疑问,我们最初几次编写仪表板),必须停止服务器,更改文件,然后重新启动服务器以查看我们的更改是否具有所需效果,这可能会令人沮丧。 为了快速迭代和解决问题,我通常在 Jupyter Notebook 中开发。 Jupyter Notebook 是 Bokeh 开发的理想环境,因为您可以在 notebook 中创建和测试完全交互式的图形。 语法略有不同,但是一旦你有一个完整的绘图,代码只需要稍加修改,然后可以复制并粘贴到一个独立的 .py 脚本中。
要了解这一点,请查看用于开发应用程序的 Jupyter Notebook (请在公号『Python数据之道』后台回复 “code”,找到本项目的源代码地址,获取相应的 Jupyter Notebook 代码文件)。
总结完全交互式的 Bokeh 仪表板使任何数据科学项目都脱颖而出。 通常情况下,我看到我的同事做了很多很棒的统计工作,但却未能清楚地传达结果,这意味着所有工作都没有得到应有的认可。 从个人经验来看,我也看到了 Bokeh 应用程序在传达结果方面的有效性。 虽然制作完整的仪表板需要做很多工作,但结果是值得的。 此外,一旦我们有了一个应用程序,可以将该框架重新用于其他项目。
从这个项目中,我们可以总结出几个关键点,以适用于许多类似的数据科学项目:
在开始数据科学任务(Bokeh 或其他任何东西)之前,拥有适当的框架/结构至关重要。 这样,你就不会发现自己迷失在试图查找错误的代码的泥潭中。 此外,一旦我们开发出一个有效的框架,它可以用最少的努力重复使用。
找到一个允许您快速迭代思路的调试工具至关重要。 编写代码 - 查看结果 - 修复错误,这种循环在 Jupyter Notebook 可以实现高效的开发(尤其是对于小规模项目)。
Bokeh 中的交互式应用程序将提升您的项目并鼓励用户参与。 仪表板可以是一个独立的探索项目,或突出您已经完成的所有艰难的分析工作!
估计你永远不知道在哪里可以找到你将在工作或辅助项目中使用的下一个工具。 所以,不要害怕尝试新的软件和技术!
以上是本文的全部内容,通过像 Bokeh 和 plot.ly 这样的 Python 库,制作交互式图表变得更加容易,并且能够以引人注目的方式呈现数据科学成果。
本文的源代码,请在公号『Python数据之道』后台回复 “code” 来获取。
关于 Bokeh 基础介绍的更多内容,可以查看一下文章内容:
Bokeh入门
figure 详细解读
Bokeh基础可视化图形
数据类型简介: ColumnDataSource
数据的添加、修改和筛选
图形与组件的布局简介