Heim >Backend-Entwicklung >Python-Tutorial >Wie erstelle ich PNG-Bilder mit Matplotlib, wenn die DISPLAY-Variable nicht definiert ist?
Generieren eines PNG mit Matplotlib, wenn DISPLAY undefiniert ist
In Python ist Matplotlib eine beliebte Bibliothek zum Erstellen statischer, animierter und interaktiver Visualisierungen . Wenn jedoch DISPLAY in der Umgebung nicht festgelegt ist, kann der Versuch, mit matplotlib ein PNG-Bild zu generieren, zur Fehlermeldung „Kein Anzeigename und keine Umgebungsvariable $DISPLAY“ führen. Dieser Fehler tritt auf, weil das Standard-Backend von Matplotlib einen Agg ist ein nicht interaktives Backend, das keinen X-Server erfordert und die Erstellung von Bildern in Headless-Umgebungen ermöglicht.
So implementieren Sie diese Lösung:
Platzieren Sie dies Code am Anfang Ihres Skripts, bevor Sie andere Matplotlib-Submodule wie Pyplot importieren. Indem wir das Backend vor dem Import von Pyplot auf Agg setzen, stellen wir sicher, dass Matplotlib nicht versucht, ein X-verwendendes Backend zu verwenden.import matplotlib # Force matplotlib to use the Agg backend matplotlib.use('Agg')
Alternativ können Sie das Backend dauerhaft festlegen, indem Sie Ihre .matplotlibrc-Konfigurationsdatei ändern. Legen Sie im Backend-Bereich Folgendes fest:
Diese globale Einstellung macht die explizite Angabe des Backends in Ihren Skripten überflüssig.backend : Agg
Sobald das entsprechende Backend konfiguriert ist, können Sie PNG generieren Bilder mit Matplotlib, ohne dass der Fehler „DISPLAY undefiniert“ auftritt.
Das obige ist der detaillierte Inhalt vonWie erstelle ich PNG-Bilder mit Matplotlib, wenn die DISPLAY-Variable nicht definiert ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!