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

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

Linda Hamilton
Linda Hamilton原創
2024-11-30 15:20:10478瀏覽

How to Generate PNG Images with Matplotlib When the DISPLAY Variable Is Undefined?

當DISPLAY 未定義時使用Matplotlib 產生PNG

在Python 中,matplotlib 是一個流行的庫,用於創建靜態、動畫和互動式視覺化。但是,當環境中未設定 DISPLAY 時,嘗試使用 matplotlib 產生 PNG 映像可能會導致錯誤訊息「無顯示名稱且無 $DISPLAY 環境變數」。出現此錯誤是因為 matplotlib 的預設後端需要 X 伺服器,而該伺服器在某些環境中不可用。

要解決此問題,我們必須明確設定 matplotlib 以使用 Agg(反顆粒幾何)後端。 Agg 是一個非互動式後端,不需要 X 伺服器,允許在無頭環境中建立映像。

以下是如何實現此解決方案:

放置此在導入任何其他 matplotlib 子模組(例如 pyplot)之前,在腳本開頭添加程式碼。透過在導入 pyplot 之前將後端設定為 Agg,我們確保 matplotlib 不會嘗試使用 X-using 後端。

或者,您可以透過修改 .matplotlibrc 設定檔來永久設定後端。在後端部分,設定以下內容:

此全域設定無需在腳本中明確指定後端。

配置適當的後端後,您可以產生 PNG使用 matplotlib 的映像不會遇到「DISPLAY undefined」錯誤。

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

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