Frozen Bokeh 应用程序太大

Posted

技术标签:

【中文标题】Frozen Bokeh 应用程序太大【英文标题】:Frozen Bokeh application too large 【发布时间】:2015-05-05 14:11:20 【问题描述】:

我创建了一个Bokeh 应用程序,主要基于这个秘诀:

http://docs.bokeh.org/en/latest/docs/gallery/unemployment.html

这很好用,但我需要能够将此应用程序分发给我的团队,他们中的大多数人没有 python,更不用说安装散景了。

我尝试使用 cx_freeze 将其构建为可执行文件,但结果可能是我的整个 python 发行版,因为它的 360+ MB!这无需我进一步研究一些丢失的 zip 文件等,我可能需要将它们添加到我的 setup.py 文件中。请注意,我的 setup.py 非常简约。这基本上是来自http://cx-freeze.readthedocs.org/en/latest/distutils.html的复制和粘贴工作

无论如何,它太大了。 你们中有人对我如何缩小这个有任何建议吗? 或者,是否有任何替代实用程序可以用来获得类似结果而没有那么多依赖项?快速浏览一下构建目录会显示 QT、scipy、numpy 和 tcl 等依赖项。

基本上,我希望为嵌入式系统创建 ram 使用图。 我当前的输出如下所示: 请注意,通过将鼠标悬停在相关地址上可以访问有关地址的额外信息。结果也是动态可移动的。散景在这里真的很闪耀!

干杯!

【问题讨论】:

【参考方案1】:

Bokeh(从 0.8.2 开始)目前将服务器与主库一起提供。因此,可能会引入您不需要的依赖项。有计划在不久的将来拆分服务器,以便可以单独管理这些依赖项。同时,如果您不使用它们,您可以删除 scipyredis 之类的东西。我不知道出现了Qt 包; Bokeh 不以任何身份使用Qt(或Tcl)。

【讨论】:

感谢您的建议! @bigreddot 我想知道您是否也可以评论此错误: FileNotFoundError: [Errno 2] No such file or directory: 'c:\\projects\\patch2map \\build\\exe.win-amd64-3.4\ \library.zip\\bokeh\_templates\\resources.html' 也许这不是它的地方,我可以单独讨论它。在我的 setup.py 中,我有: build_exe_options = "packages": ["bokeh"], 我猜cx_freeze 不包括重要且必要的文件,这些文件恰好没有.py 文件后缀。有没有办法告诉cx_freeze 它需要打包其他文件?不幸的是,我对cx_freeze 一点也不熟悉,所以我不能提供更多的指导,只能说site-packagesbokeh 包下的每一件事都很重要。 感谢您的帮助。我理解这个问题,但我仍然不确定如何解决它。我知道我可以让 cx_freeze 包含整个目录,但我不确定如何让它保留在正确的位置。我想我可能只需要看看另一种机制。不管怎样,你已经回答了我的问题。谢谢。

以上是关于Frozen Bokeh 应用程序太大的主要内容,如果未能解决你的问题,请参考以下文章

上传 CSV 文件并在 Bokeh Web 应用程序中读取

Django:Bokeh.safely 不是一个函数

在bokeh中嵌入散景应用程序

Python Bokeh HoverTool 格式化程序错误:“HoverTool 的意外属性‘格式化程序’”

Bokeh 教程:Python 交互式可视化库

Bokeh 0.12.3dev3,Python 交互式可视化库