相关疑难解决方法(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万
查看次数

使用tkinter到ssh没有显示名称和没有$ DISPLAY环境变量

我正在尝试运行一个非常简单的代码,在集群中输出.png文件.这是代码:

import matplotlib.pyplot as plt
import numpy as np

x = np.random.randn(60)
y = np.random.randn(60)

plt.scatter(x, y, s=20)

out_png = 'path/to/store/out_file.png'
plt.savefig(out_png, dpi=150)
Run Code Online (Sandbox Code Playgroud)

如果我使用python simple_code.py安装了matplotlib 1.2.1的系统中的命令运行此代码,我会收到警告:

Unable to load library icui18n "Cannot load library icui18n:
Run Code Online (Sandbox Code Playgroud)

.png图像仍然生成,所以我没有问题.但是如果我在安装了matplotlib 1.3.0的集群中使用相同的命令和代码,则会失败并显示错误:

Traceback (most recent call last):
  File "simple_code.py", line 33, in <module>
    plt.scatter(x, y, s=20)
  File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 3078, in scatter
    ax = gca()
  File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 803, in gca
    ax =  gcf().gca(**kwargs)
  File "/usr/lib/pymodules/python2.7/matplotlib/pyplot.py", line 450, in gcf
    return figure()
  File …
Run Code Online (Sandbox Code Playgroud)

python ssh numpy tkinter matplotlib

30
推荐指数
1
解决办法
8万
查看次数

标签 统计

matplotlib ×2

python ×2

graph ×1

numpy ×1

ssh ×1

tkinter ×1