相关疑难解决方法(0)

当DISPLAY未定义时,使用matplotlib生成PNG

我正在尝试将networkx与Python一起使用.当我运行此程序时,它会收到此错误.有什么遗漏?

#!/usr/bin/env python

import networkx as nx
import matplotlib
import matplotlib.pyplot
import matplotlib.pyplot as plt

G=nx.Graph()
G.add_node(1)
G.add_nodes_from([2,3,4,5,6,7,8,9,10])
#nx.draw_graphviz(G)
#nx_write_dot(G, 'node.png')
nx.draw(G)
plt.savefig("/var/www/node.png")


Traceback (most recent call last):
  File "graph.py", line 13, in <module>
    nx.draw(G)
  File "/usr/lib/pymodules/python2.5/networkx/drawing/nx_pylab.py", line 124, in draw
    cf=pylab.gcf()
  File "/usr/lib/pymodules/python2.5/matplotlib/pyplot.py", line 276, in gcf
    return figure()
  File "/usr/lib/pymodules/python2.5/matplotlib/pyplot.py", line 254, in figure
    **kwargs)
  File "/usr/lib/pymodules/python2.5/matplotlib/backends/backend_tkagg.py", line 90, in new_figure_manager
    window = Tk.Tk()
  File "/usr/lib/python2.5/lib-tk/Tkinter.py", line 1650, in __init__
    self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, …
Run Code Online (Sandbox Code Playgroud)

python graph matplotlib

309
推荐指数
9
解决办法
17万
查看次数

如何检查我是否在Python上运行Windows?

我找到了平台模块,但它说它返回'Windows'并且它在我的机器上返回'Microsoft'.我注意到在stackoverflow的另一个线程中它有时返回'Vista'.

所以,问题是,如何实施?

if isWindows():
  ...
Run Code Online (Sandbox Code Playgroud)

以前向兼容的方式?如果我必须检查"Vista"之类的东西,那么当下一个版本的Windows出现时它就会中断.


注意:声称这是一个重复的问题的答案实际上没有回答问题isWindows.他们回答"什么平台"的问题.由于存在许多种类的窗口,它们都没有全面地描述如何得到答案isWindows.

python platform platform-specific

192
推荐指数
5
解决办法
13万
查看次数

在没有运行X服务器的情况下生成matplotlib图

Matplotlib似乎需要$ DISPLAY环境变量,这意味着正在运行的X服务器.
某些Web托管服务不允许运行X服务器会话.
有没有办法在没有正在运行的X服务器的情况下使用matplotlib生成图形?

[username@hostname ~]$ python2.6
Python 2.6.5 (r265:79063, Nov 23 2010, 02:02:03)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-48)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import matplotlib.pyplot as plt
>>> fig = plt.figure()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/username/lib/python2.6/matplotlib-1.0.1-py2.6-linux-i686.egg/matplotlib/pyplot.py", line 270, in figure
    **kwargs)
  File "/home/username/lib/python2.6/matplotlib-1.0.1-py2.6-linux-i686.egg/matplotlib/backends/backend_tkagg.py", line 80, in new_figure_manager
    window = Tk.Tk()
  File "/usr/local/lib/python2.6/lib-tk/Tkinter.py", line 1643, in __init__
    self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, …
Run Code Online (Sandbox Code Playgroud)

python matplotlib

172
推荐指数
2
解决办法
11万
查看次数

标签 统计

python ×3

matplotlib ×2

graph ×1

platform ×1

platform-specific ×1