python - CentOS Matplotlib 运行时错误 : Could not open display

标签 python linux matplotlib centos

我正在使用 Cuda 并遇到运行时错误。

环境:

Python 2.7
Cuda 9.0
Torch 0.4.0
Torchvision 0.1.8
Matplotlib 1.2.0 

错误信息:

File "/usr/lib64/python2.7/site-packages/matplotlib/backends/backend_gtk.py", line 13, in <module>
    import gtk; gdk = gtk.gdk
  File "/usr/lib64/python2.7/site-packages/gtk-2.0/gtk/__init__.py", line 64, in <module>
    _init()
  File "/usr/lib64/python2.7/site-packages/gtk-2.0/gtk/__init__.py", line 52, in _init
    _gtk.init_check()
RuntimeError: could not open display

添加“MPLBACKEND=Agg”仍会输出上述错误消息。

有人知道怎么解决吗?

最佳答案

我说过我会结束这个问题。但由于某些人可能会对这个答案感兴趣,所以我将其保留。也许有人可以向我解释为什么我的解决方案有效?

我远程工作。 echo $DISPLAY 什么也没给出。 lshw -C display 提供两个显示。其中之一是英伟达的。

我的问题实际上是通过添加解决的

import matplotlib as mpl
mpl.use('Agg')

将 matplotlib.pyplot 导入为 plt 之前。

关于python - CentOS Matplotlib 运行时错误 : Could not open display,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58856865/

相关文章:

regex - 使用正则表达式查找并替换字符串

linux - 如何计算目录文件中的选项卡?

linux - 如何调试我的 Cron 作业运行两次的原因?

python - Pyplot 双纽线

matplotlib - 在 matplotlib 中调整大小来保存图形

python - 终止正在运行的 Python 应用程序

c# - Python 原始字符串 "r"标志在 C# 中等效

python - 为什么在单行中使用条件时我不能在 python if else 语句中使用 pass

python - Matplotlib 离散颜色条

python - 如何在 Python 中一次捕获多个异常并处理单个异常?