网络中的 Matplotlib 图像属性(Django)

Posted

技术标签:

【中文标题】网络中的 Matplotlib 图像属性(Django)【英文标题】:Matplot lib image properties in web (Django) 【发布时间】:2017-07-01 04:16:02 【问题描述】:

我想将图像输出到在 matplotlib 中创建的网络,具有与运行 image.show() 时在桌面上相同的功能,例如缩放、更彻底地沿着绘图移动。

我查看了#stack,发现旧帖子只提供静态图像或 gif 或 matplotlib.animate()

我还查看了 matplotlib 小部件,但据我所知,这些小部件仅适用于桌面 GUI。

请分享一些关于如何实现它的经验或想法。

谢谢

【问题讨论】:

【参考方案1】:

Matplotlib 是一个服务器端库,所以你不能在客户端做任何这样的事情。

最接近的方法是使用mpld3(mpld3 通过将 matplotlib 图转换为 d3 js 图需要渲染的 html/js 来工作)或绘制点的不同客户端库。

【讨论】:

太棒了,非常感谢。你自己试过吗?是否有任何可行的 django/mpld3 集成示例? @Aleks_Saint - 我在 mpld3 中为我们的应用程序创建了一个概念证明,但我们认为我们的用例最终不需要它。链接的文档有lots of examples。【参考方案2】:

向网络提供纯 matplotlib 的最简单方法是使用 jupyter notebook。

除此之外,您可能还想查看特定的库,例如 Plotlybokeh

【讨论】:

我已经检查过了,但是 mpld3 看起来更符合我的需要。谢谢! 我曾经开始使用 mpld3,不久之后意识到散景更适合,因为它可以在服务器上动态运行,也可以在网页上静态提供。最后,这一切都取决于应用程序。 更彻底地检查了散景,看起来它是为相当庞大的独立应用程序设计的,但这打开了非常有趣的视角,感谢您与我分享,谢谢!

以上是关于网络中的 Matplotlib 图像属性(Django)的主要内容,如果未能解决你的问题,请参考以下文章

『TensorFlow』生成式网络中的图片预处理

如何从 matplotlib 中的图像数组制作视频?

删除图像中的水平线(OpenCV、Python、Matplotlib)

使用颜色条删除图像不会释放 matplotlib 中的内存?

使用python 3.6中的matplotlib.image在python中打开.jpg图像

python使用matplotlib可视化线图(line plot)在可视化图像中的指定位置添加竖线(add vertical line in matplotlib plot)