是否有python包来生成基于web的交互式条形图?在Python中绘制基于web的图形的最佳方式
我有以下要求:
,因为它们依赖于numpy的(大量依赖的),我不能plotly使用,matplotlib。我的环境不能安装任何这样的软件包,但是我可以尝试使用软件包的源代码。
我需要跨平台的封装
是否有python包来生成基于web的交互式条形图?在Python中绘制基于web的图形的最佳方式
我有以下要求:
,因为它们依赖于numpy的(大量依赖的),我不能plotly使用,matplotlib。我的环境不能安装任何这样的软件包,但是我可以尝试使用软件包的源代码。
我需要跨平台的封装
您需要依靠d3.js如果你想,没有任何包装的事情。 从python生成数据,在d3.js中绘制渲染和交互。 不可重复使用,如果项目巨大,不适用。 http://d3js.org
如果你正在寻找完整的堆栈(这将产生你的情节,你可以托管在web服务器上)看看bokeh.pydata.org。它取决于:
NumPy
Flask
Redis
Requests
gevent
gevent-websocket
Pandas
它们通过使用contiuum.io Anaconda/MiniConda Python发行版自动安装。
使用conda软件包管理器,您无需担心安装二进制软件包,Anaconda python distribution在您的方案中提供了所需的一切。它有conda
软件包管理器,其中安装了独立平台Binaries
以及所有的依赖关系。这意味着你不需要额外的包管理器或编译器(GCC)来从头构建二进制文件。
我已经测试了无包Linux上的conda,它的工作原理完美。 http://conda.pydata.org/miniconda.html 做到这一点:
下载miniconda:
wget http://repo.continuum.io/miniconda/Miniconda-3.5.5-Linux-x86_64.sh
安装(不需要root权限):
庆典Miniconda-3.5.5-Linux-x86_64.sh
然后做:
conda create -n plotting_env python
conda update conda
conda install bokeh
conda是满的(依赖解决),跨平台,已经有Virtualenv式支持的packagemanager。 它将安装所有需要的库(包括C库)的二进制文件,而无需OS提供的包管理器。 然后代码!
谢谢,但没有任何我可以使用的软件包?大多数软件包似乎都依赖于numpy – abarik
Numpy是python非常重要的一块软件,它能够以最快,最有效的方式(非常接近C的性能)生成/主要/分析数组。如果可能的话,你应该使用python的continuum.io发布:Miniconda,并安装numpy(它完全是跨平台的)。 –
谢谢,我有virtualenv的经验; conda看起来与它相似。 无论如何,这里是我的担忧:我写的python包将从NXOS运行(Cisco Nexus OS,它具有Linux内核,没有安装包的方法)。有没有办法使用conda将numpy/matplotlib打包为二进制文件,并使用它?这是否有意义 – abarik
是否可以在你的env中添加numpy? –
“基于网页的交互式条形图” - 你是什么意思?你是否想要一些图表,人们可以点击“向下钻取”,这是由你在Python中生成的数据提供的? Python不能在浏览器上运行,所以Python没有交互性。它最多可以在某个时间点生成静态数据图表 - 为了生成动画或与它们进行交互,您需要一个客户端库。所以,我再问一次 - 你到底需要什么? –
'它最多可以在某个时间点生成静态数据图表 - 要动画或与它们进行交互,您需要一个客户端库。“它确实是python不是客户端,但有库文件可以实现客户端给你的东西:bokeh.pydata.org是最完整的html5,d3。js基地为python绘制解决方案。 –