天天看點

matplot在SSH下報錯解決方案

  1. 問題描述:Python版本是3.6.3,在Windows下使用matplotlib繪圖可以,但是在ssh遠端繪圖的時候報錯了,錯誤是:
RuntimeError: Invalid DISPLAY variable
           
  1. 原因:matplotlib的預設backend是TkAgg,而FltAgg、GTK、GTKCairo、TkAgg、Wx和WxAgg這幾個backend都要求有GUI圖形界面,是以在ssh操作的時候會報錯.
  2. 解決辦法:在導入matplotlib的時候指定不需要GUI的backend(Agg、Cairo、PS、PDF和SVG)。例如:
import matplotlib.pyplot as plt
plt.switch_backend('agg')