1. 程式人生 > >matplotlib 繪圖報錯 RuntimeError: Invalid DISPLAY variable

matplotlib 繪圖報錯 RuntimeError: Invalid DISPLAY variable

spl 服務器 linux 服務器 使用 error 圖形 .py src error:

ssh 遠程登錄 Linux 服務器使用 matplotlib.pyplot 繪圖時報錯

技術分享圖片

原因:

matplotlib 在 windows 下的默認 backend 是 TkAgg;在 Linux 下的默認 backend 是 Qt5Agg。但是這兩個 backend 都要求有 GUI 圖形界面,所以在 Linux 服務器上運行時會報錯。

另外 FltkAgg, GTK, GTKAgg, GTKCairo, TkAgg , Wx, WxAgg這幾個backend都要求有GUI圖形界面的

技術分享圖片

技術分享圖片

解決辦法:更換 backend

將 backend 更換為不需要 GUI 的 backend,比如 Agg, Cairo, PS, PDF, SVG

import matplotlib.pyplot as plt
plt.switch_backend(agg)

技術分享圖片

matplotlib 繪圖報錯 RuntimeError: Invalid DISPLAY variable