Ich habe das Diagramm erfolgreich erstellt, aber wenn ich versuche, es mit plt.savefig() zu exportieren, erhalte ich nur ein leeres PDF-Dokument.
Hier ist ein MWE, weil mein tatsächlicher Code ziemlich komplex ist:
Code: Select all
import numpy as np;
import matplotlib.pyplot as plt;
geogrph=plt.axes(projection="3d");
thetaE=np.linspace(0,np.pi,501);
phiE=np.linspace(0,2*np.pi,501);
thetaE,phiE=np.meshgrid(thetaE,phiE);
xE=np.sin(thetaE)*np.cos(phiE);
yE=np.sin(thetaE)*np.sin(phiE);
zE=np.cos(thetaE);
geogrph.plot_surface(xE,yE,zE);
plt.savefig("geogrph.pdf");
Wie bereits erwähnt, gibt der obige Code eine leere PDF-Datei aus. Es zeigt zwar das erwartete Diagramm auf dem Jupyter-Frontend an (siehe unten), kann es aber aus irgendeinem Grund nicht speichern. Mir ist bekannt, dass plt.show() dieses Verhalten verursacht und daher nach plt.savefig() platziert werden sollte, aber ich verwende plt.show() in diesem Fall nicht einmal, daher weiß ich nicht, was los ist.
Grafik:

Ich habe irgendwo gelesen, dass dies passieren kann, wenn %matplotlib inline aktiviert ist, und es kann durch den Wechsel zu %matplotlib notebook gelöst werden. Die Ausführung dieses Befehls führt jedoch zu einem Fehler:
(...) ImportError: failed import name 'alert' from 'js' (unknown location)"],"output_type":"error"}],"execution_count":236}]
Ich habe dann irgendwo anders gelesen, dass ipympl installiert werden muss, damit der Switch funktioniert, also habe ich versucht, etwas hinzuzufügen pip install ipympl am Anfang der Zelle. Ich erhalte jedoch immer noch den oben genannten Fehler.
Ich bin ein absoluter Neuling in Python, falls es nicht offensichtlich war, und ich bin nicht an diese Art von Fehler gewöhnt, daher habe ich keine Ahnung, wie ich das debuggen kann.
Vielen Dank im Voraus für jede Hilfe.
Mobile version