Heim > Backend-Entwicklung > Python-Tutorial > Wie behebe ich den Fehler „Generieren eines PNG mit Matplotlib, wenn DISPLAY undefiniert ist'?

Wie behebe ich den Fehler „Generieren eines PNG mit Matplotlib, wenn DISPLAY undefiniert ist'?

Patricia Arquette
Freigeben: 2024-12-01 16:10:12
Original
237 Leute haben es durchsucht

How to Fix the

So beheben Sie den Fehler „Generieren eines PNG mit Matplotlib, wenn DISPLAY nicht definiert ist“

Dieser Fehler tritt auf, wenn versucht wird, ein PNG-Bild mit Matplotlib in der DISPLAY-Umgebung zu generieren Variable ist nicht gesetzt oder undefiniert. Dies tritt normalerweise auf, wenn matplotlib in einer Headless-Umgebung wie einem Server oder einem Batch-Skript ausgeführt wird.

Die Hauptursache für diesen Fehler ist, dass matplotlib ein Backend auswählt, das standardmäßig eine X Windows-Anzeige erfordert. Um dieses Problem zu beheben, müssen Sie matplotlib explizit zwingen, ein Backend zu verwenden, das kein X Windows erfordert.

Lösung:

Um dieses Problem zu beheben, fügen Sie vorher den folgenden Code ein Importieren anderer Matplotlib-Module:

import matplotlib

# Force matplotlib to use a backend that does not require X Windows.
matplotlib.use('Agg')
Nach dem Login kopieren

Dadurch wird das Backend auf das Agg-Backend (Anti-Grain Geometry) eingestellt ist für die Generierung von Bildern konzipiert, ohne dass eine X-Windows-Anzeige erforderlich ist.

Alternative Lösung:

Eine alternative Lösung besteht darin, das Backend direkt im festzulegen. matplotlibrc Konfigurationsdatei. Diese Datei befindet sich normalerweise im Verzeichnis ~/.config/matplotlib. Fügen Sie der Datei die folgende Zeile hinzu:

backend: Agg
Nach dem Login kopieren

Dadurch wird das Backend für alle Matplotlib-Instanzen dauerhaft auf Agg gesetzt.

Wichtig

Denken Sie daran dass diese Lösungen implementiert werden müssen, bevor Sie andere Matplotlib-Module importieren, z pyplot. Andernfalls hat matplotlib sein Backend bereits ausgewählt und die use('Agg')-Direktive hat keine Wirkung.

Das obige ist der detaillierte Inhalt vonWie behebe ich den Fehler „Generieren eines PNG mit Matplotlib, wenn DISPLAY undefiniert ist'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage