小编典典

如何使用pylab远程保存图形?

python

我正在尝试使用命令在远程计算机上生成图形pylab.savefig。但是我得到了这样的错误:

Unable to access the X Display, is $DISPLAY set properly?

如何正确保存数字?


阅读 209

收藏
2020-12-20

共1个答案

小编典典

默认情况下,matplotlib将使用类似TkAgg后端的内容。这要求X服务器正在运行。

尽管您只能使用X转发,但是随着matplotlib尝试与远程X服务器连接时,会有明显的延迟。如果您不需要与图进行交互,通常最好完全避免X连接,从而加快处理速度。

如果要完全不需要X服务器来进行绘图,请改用Agg 后端

例如,执行以下操作:

import matplotlib
matplotlib.use('Agg') # Must be before importing matplotlib.pyplot or pylab!
import matplotlib.pyplot as plt

fig = plt.figure()
plt.plot(range(10))
fig.savefig('temp.png')

如果您希望这是默认行为,则可以修改matplotlibrc文件Agg默认使用后端。

有关更多信息,请参见本文

2020-12-20