2014-07-20 72 views
0

是否有python包来生成基于web的交互式条形图?在Python中绘制基于web的图形的最佳方式

我有以下要求:

  • ,因为它们依赖于numpy的(大量依赖的),我不能plotly使用,matplotlib。我的环境不能安装任何这样的软件包,但是我可以尝试使用软件包的源代码。

  • 我需要跨平台的封装

+0

是否可以在你的env中添加numpy? –

+0

“基于网页的交互式条形图” - 你是什么意思?你是否想要一些图表,人们可以点击“向下钻取”,这是由你在Python中生成的数据提供的? Python不能在浏览器上运行,所以Python没有交互性。它最多可以在某个时间点生成静态数据图表 - 为了生成动画或与它们进行交互,您需要一个客户端库。所以,我再问一次 - 你到底需要什么? –

+0

'它最多可以在某个时间点生成静态数据图表 - 要动画或与它们进行交互,您需要一个客户端库。“它确实是python不是客户端,但有库文件可以实现客户端给你的东西:bokeh.pydata.org是最完整的html5,d3。js基地为python绘制解决方案。 –

回答

1

您需要依靠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提供的包管理器。 然后代码!

+0

谢谢,但没有任何我可以使用的软件包?大多数软件包似乎都依赖于numpy – abarik

+0

Numpy是python非常重要的一块软件,它能够以最快,最有效的方式(非常接近C的性能)生成/主要/分析数组。如果可能的话,你应该使用python的continuum.io发布:Miniconda,并安装numpy(它完全是跨平台的)。 –

+0

谢谢,我有virtualenv的经验; conda看起来与它相似。 无论如何,这里是我的担忧:我写的python包将从NXOS运行(Cisco Nexus OS,它具有Linux内核,没有安装包的方法)。有没有办法使用conda将numpy/matplotlib打包为二进制文件,并使用它?这是否有意义 – abarik

相关问题