Re: [問題] 請問 matplotlib 要如何 show()
→
02/16 11:48,
02/16 11:48
感謝 yungyuc,不過我之前都使用 tarball 安裝,大概是因為這樣,整個相依性都掛了,
搞到不清楚到底是誰有問題,後來決定整個重來,除了 networkx、psyco 之外,
全都使用系統套件安裝,總共安裝了 numpy、matplotlib、tkinter、scipy 及其套件,
像是 pygtk、pyobject、pycairo、gtk、tk、tcl 之類的全都順便安裝,
因為不確定可能會少什麼的情況下,只好全部都安裝,以確保不會少東西,
不過還是出現了以下錯誤:
$HOME=/root
CONFIGDIR=/root/.matplotlib
matplotlib data path /usr/lib64/python2.5/site-packages/matplotlib/mpl-data
loaded rc file
/usr/lib64/python2.5/site-packages/matplotlib/mpl-data/matplotlibrc
matplotlib version 0.98.1
verbose.level helpful
interactive is False
units is False
platform is linux2
Using fontManager instance from /root/.matplotlib/fontManager.cache
numerix numpy 1.2.0
Traceback (most recent call last):
File "1.py", line 1, in <module>
from pylab import *
File "/usr/lib64/python2.5/site-packages/pylab.py", line 1, in <module>
from matplotlib.pylab import *
File "/usr/lib64/python2.5/site-packages/matplotlib/pylab.py", line 247, in
<module>
from matplotlib.pyplot import *
File "/usr/lib64/python2.5/site-packages/matplotlib/pyplot.py", line 39, in
<module>
new_figure_manager, draw_if_interactive, show = pylab_setup()
File "/usr/lib64/python2.5/site-packages/matplotlib/backends/__init__.py",
line 20, in pylab_setup
globals(),locals(),[backend_name])
File
"/usr/lib64/python2.5/site-packages/matplotlib/backends/backend_gtkagg.py",
line 10, in <module>
from matplotlib.backends.backend_gtk import gtk, FigureManagerGTK,
FigureCanvasGTK,\
File
"/usr/lib64/python2.5/site-packages/matplotlib/backends/backend_gtk.py", line
7, in <module>
import gtk; gdk = gtk.gdk
File "/usr/lib64/python2.5/site-packages/gtk-2.0/gtk/__init__.py", line 79,
in <module>
_init()
File "/usr/lib64/python2.5/site-packages/gtk-2.0/gtk/__init__.py", line 67,
in _init
_gtk.init_check()
RuntimeError: could not open display
查了資料後發現,問題還是在 backend,安裝好的 matplotlibrc 初始設定是 GTKAgg,
於是我就改成 TkAgg,
$HOME=/root
CONFIGDIR=/root/.matplotlib
matplotlib data path /usr/lib64/python2.5/site-packages/matplotlib/mpl-data
loaded rc file /root/.matplotlib/matplotlibrc
matplotlib version 0.98.1
verbose.level helpful
interactive is False
units is False
platform is linux2
Using fontManager instance from /root/.matplotlib/fontManager.cache
numerix numpy 1.2.0
backend TkAgg version 8.5
Traceback (most recent call last):
File "1.py", line 2, in <module>
plot([1,2,3])
File "/usr/lib64/python2.5/site-packages/matplotlib/pyplot.py", line 1947,
in plot
b = ishold()
File "/usr/lib64/python2.5/site-packages/matplotlib/pyplot.py", line 396,
in ishold
return gca().ishold()
File "/usr/lib64/python2.5/site-packages/matplotlib/pyplot.py", line 496,
in gca
ax = gcf().gca(**kwargs)
File "/usr/lib64/python2.5/site-packages/matplotlib/pyplot.py", line 218,
in gcf
return figure()
File "/usr/lib64/python2.5/site-packages/matplotlib/pyplot.py", line 204,
in figure
**kwargs)
File
"/usr/lib64/python2.5/site-packages/matplotlib/backends/backend_tkagg.py",
line 87, in new_figure_manager
window = Tk.Tk()
File "/usr/lib64/python2.5/lib-tk/Tkinter.py", line 1636, in __init__
self.tk = _tkinter.create(screenName, baseName, className, interactive,
wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable
依然有問題,後來看到裡面支援比較多的是 Cairo 和 GDK,於是就改成 Cairo 來試試,
想不到就可以正確的把圖 show() 出來了。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.25.118.144
→
02/17 09:27, , 1F
02/17 09:27, 1F
→
02/17 09:28, , 2F
02/17 09:28, 2F
→
02/17 09:28, , 3F
02/17 09:28, 3F
→
02/17 19:34, , 4F
02/17 19:34, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章