首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在不运行X服务器的情况下生成matplotlib图

在不运行X服务器的情况下生成matplotlib图
EN

Stack Overflow用户
提问于 2011-02-08 17:29:38
回答 1查看 130.7K关注 0票数 187

Matplotlib似乎需要$DISPLAY环境变量,这意味着正在运行的X服务器。

某些虚拟主机服务不允许运行X服务器会话。

有没有一种方法可以在不运行X服务器的情况下使用matplotlib生成图形?

代码语言:javascript
复制
[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, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable
>>>
EN

回答 1

Stack Overflow用户

发布于 2011-02-08 17:34:06

您需要直接使用matplotlib API,而不是通过pylab接口。这里有一个很好的例子:

http://www.dalkescientific.com/writings/diary/archive/2005/04/23/matplotlib_without_gui.html

票数 21
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4931376

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档