Ich habe in Windows 7 ein Upgrade von Python (x, y) 2.7.2.3 auf 2.7.6.0 durchgeführt (und war froh zu sehen, dass ich function_name?
die Dokumentzeichenfolge endlich wieder im Objektinspektor eingeben und sehen kann ), aber jetzt funktioniert das Plotten nicht mehr so gewöhnt an.
Zuvor (Spyder 2.1.9, IPython 0.10.2, matplotlib 1.2.1), als ich dieses Skript zum Beispiel plottete , zeichnete es die Nebenplots nebeneinander in einem interaktiven Fenster:
Wenn ich jetzt (Spyder 2.2.5, IPython 1.2.0, Matplotlib 1.3.1) versuche, Dinge zu zeichnen, werden die Unterzeichnungen als winzige Inline-PNGs ausgeführt, was eine Änderung in IPython darstellt :
Also ging ich in Optionen und fand dies:
Das scheint zu sagen, dass ich die alten interaktiven Diagramme zurückerhalten kann, wobei die 4 Nebenbilder nebeneinander angezeigt werden. Wenn ich jedoch zu "Automatisch" wechsle und versuche, etwas zu zeichnen, geschieht nichts. Überhaupt keine Grundstücke.
Wenn ich dieses Dropdown-Menü auf Qt umschalte oder "Unterstützung aktivieren" deaktiviere, wird nur die erste Nebenhandlung oder ein Teil davon gezeichnet und dann gestoppt:
Wie erhalte ich das alte Verhalten von 4 nebeneinander angeordneten Nebenhandlungen in einer einzelnen Figur, mit der ich interagieren kann?
quelle
Antworten:
Ändern Sie das Backend auf automatisch:
Extras> Einstellungen> IPython-Konsole> Grafik> Grafik-Backend> Backend: Automatisch
Dann schließen und öffnen Sie Spyder.
quelle
python > preferences > IPython console > Graphics > Graphics backend > Backend: Automatic
Sie können dies schnell steuern, indem Sie integrierte magische Befehle in die IPython-Konsole von Spyder eingeben , die ich schneller finde, als diese aus dem Einstellungsmenü auszuwählen. Änderungen werden sofort wirksam, ohne dass Spyder oder der Kernel neu gestartet werden müssen.
Geben Sie Folgendes ein, um zu "automatischen" (dh interaktiven) Plots zu wechseln:
Wenn Sie dann wieder zu "Inline" wechseln möchten, geben Sie Folgendes ein:
(Hinweis: Diese Befehle funktionieren nicht in Nicht-IPython-Konsolen.)
Weitere Hintergrundinformationen zu diesem Thema: Zweck von "% matplotlib inline"
quelle
matplotlib inline File "<stdin>", line 1 %matplotlib inline ^ SyntaxError: invalid syntax
Nach dem Anwenden: Extras> Einstellungen> Grafik> Backend> Automatisch Starten Sie den Kernel einfach neu
Und Sie werden sicherlich Interactive Plot erhalten. Viel Spaß beim Codieren!
quelle
Wie in den Kommentaren gesagt, liegt das Problem in Ihrem Skript. Eigentlich gibt es 2 Probleme:
None
irgendwo. Vielleicht wegen des Standarddikts?show()
nach jeder Nebenhandlung an.show()
sollte einmal am Ende Ihres Skripts aufgerufen werden. Die Alternative ist die Verwendung des interaktiven Modus, nach dem Sieion
in der Dokumentation von matplotlib suchen .quelle
Dies ist eigentlich ziemlich einfach zu beheben und erfordert keine Codierung:
1.Klicken Sie auf die Registerkarte Plots über der Konsole. 2.Klicken Sie dann in der oberen rechten Ecke des Plots-Bildschirms auf die Optionsschaltfläche. 3. Deaktivieren Sie zuletzt die Schaltfläche "Inline-Plotten stumm schalten"
Führen Sie nun Ihr Skript erneut aus und Ihre Grafiken sollten in der Konsole angezeigt werden.
Prost.
quelle