Python 是否可以在cygwin上绘制iGraph绘图?
虽然在Ubuntu上生成Python 是否可以在cygwin上绘制iGraph绘图?,python,plot,cygwin,igraph,Python,Plot,Cygwin,Igraph,虽然在Ubuntu上生成iGraph绘图没有问题,但我在cygwin上遇到以下错误: 环境: 视窗7 Cygwin Cygwin_NT-6.1-WOW Ron 2.0.1(0.287/5/3) 图0.7.1 您的机器上的py2cairo可能没有问题,但您可以自己测试。尝试绘图(g,“test.png”,layout=layout)-这将把绘图保存到一个文件中,而不是显示它。您看到的错误消息是由igraph引发的,因为它无法确定如何指示操作系统在窗口中显示PNG文件(打印保存到该文件中) 用于显
iGraph
绘图没有问题,但我在cygwin上遇到以下错误:
环境:
- 视窗7
- Cygwin Cygwin_NT-6.1-WOW Ron 2.0.1(0.287/5/3)
- 图0.7.1
- 您的机器上的
py2cairo
可能没有问题,但您可以自己测试。尝试绘图(g,“test.png”,layout=layout)
-这将把绘图保存到一个文件中,而不是显示它。您看到的错误消息是由igraph引发的,因为它无法确定如何指示操作系统在窗口中显示PNG文件(打印保存到该文件中)
用于显示绘图的命令存储在名为apps.image\u viewer
的配置变量中。您可以按如下方式对其进行更改:
>>> from igraph import Configuration
>>> cfg = Configuration.instance()
>>> cfg["apps.image_viewer"] = "start"
如果您将PNG文件的名称传递给Windows上的start
命令,那么它可能会打开默认的图像查看器。如果有效,您可以通过将以下内容写入由cfg.filename
指向的文件来持久化更改:
[apps]
image_viewer=start
值得一提的是,igraph中用于确定在特定操作系统上使用哪个图像查看器的部分(如果
apps.image\u viewer
键不存在)位于名为get\u platform\u image\u viewer()
的函数中的igraph/configuration.py
。此函数使用platform.system()。如果您能让我知道您的Python中打印了什么platform.system()
,我将提交一个补丁,使igraph以与Windows相同的方式处理Cygwa。谢谢您的详细回答,@Tamás。我现在会检查它的各种建议。在我的cygwin上:platform.system()==cygwin\u NT-6.1-WOW
(还有未实现的错误
异常报告)。至于其他建议,@Tamás-将PNG保存到文件中是可行的。但是,我无法通过cygwin引导windows image viewer显示。我现在正在重新安装我的X11
,看看是否可以使用ImageMagick
显示。您提到的补丁将不胜感激。如果您能设法解决如何在Windows上从Cygwin打开图像查看器的问题,我可以提供一个补丁(不幸的是,我没有Windows,所以我无法自己测试它)。请在您成功运行后与我联系,然后我将发布补丁。我尝试在图像查看器
上搜索路径,但失败:您知道图像查看器
的路径吗?不,但我发现一篇帖子似乎暗示Cygwin的cygstart
与普通Windows提示符下的start
类似,因此您可以尝试cygstart
作为图像查看器。(来源:)
>>> from igraph import Configuration
>>> cfg = Configuration.instance()
>>> cfg["apps.image_viewer"] = "start"
[apps]
image_viewer=start