首頁 >後端開發 >Python教學 >當 DISPLAY 未定義時如何使用 Matplotlib 產生 PNG 影像?

當 DISPLAY 未定義時如何使用 Matplotlib 產生 PNG 影像?

DDD
DDD原創
2024-12-09 14:54:13550瀏覽

How to Generate PNG Images with Matplotlib When DISPLAY is Undefined?

當DISPLAY 未定義時使用matplotlib 生成PNG

問題:

嘗試時在沒有定義DISPLAY 環境變數的情況下使用matplotlib 創建PNG 影像,您可能會遇到錯誤,表示matplotlib 找不到合適的後端。

原因:

matplotlib 預設使用基於 X 的後端,這需要有效的 DISPLAY 變數。當 DISPLAY 未定義時,matplotlib 將引發錯誤。

解決方案:使用 'Agg' 後端

要解決此問題,請強制 matplotlib 使用「Agg」後端,不需要圖形顯示。這可以透過在任何其他matplotlib 導入之前添加以下程式碼來實現:

import matplotlib
# Force matplotlib to not use any Xwindows backend.
matplotlib.use('Agg')

說明:

Agg 後端是一個非互動式後端,它提供將圖形儲存為文件而不需要圖形顯示的方法。透過設定 matplotlib 使用此後端,即使沒有有效的 DISPLAY 變量,您也可以產生 PNG 影像。

替代方案:

  • 將 DISPLAY 變數設定為有效的顯示裝置。
  • 使用不依賴 matplotlib 處理影像的不同 Python 模組
  • 在.matplotlibrc檔案中設定後端:
backend : Agg

以上是當 DISPLAY 未定義時如何使用 Matplotlib 產生 PNG 影像?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn