2016-06-23 12 views
0

Ich habe versucht, plt.show() auszuführen, aber es wird kein Diagramm angezeigt. Ich hatte viele Lösungen von stackoverflow einschließlich Matplotlib Backend zu Qt4Agg versucht, auf andere Backends (d. H. TkAgg, Agg) und neu installieren Matplotlib-Paket, aber immer noch nicht das Problem zu lösen. Einige Lösungen, die ich versucht hatte, aber nicht arbeiten, sind:matplotlib zeigt kein Diagramm an()

matplotlib does not show my drawings although I call pyplot.show()

Matplotlib.Pyplot does not show output; No Error

Why matplotlib does not plot?

Matplotlib does not show labels or numbers

Im Folgenden ist der Code, den ich zu laufen versucht:

plt.scatter(pf["age"], pf["friend_count"]) 
plt.xlabel = "age" 
plt.ylabel = "friends count" 
plt.title = "Facebook Friends count by Age" 
plt.show() 

Wenn der Code plt.scatter(pf["age"], pf["friend_count"]) ausgeführt wurde, wurde ein Streudiagramm ohne Beschriftung und Titel angezeigt. plt.show() wurde nicht ausgeführt und es wurde kein Fehler angezeigt. Schätze jede Hilfe.

Ich installierte Anaconda mit Python 3 für Windows OS. Mein Mac Laptop läuft auf Bootcamp.

+0

Worauf führen Sie Ihren Python-Code: PyCharm, Spyder, Canopy, Jupyter-Notebook, iPython, das Terminal? – wigging

+0

Ich benutze den Originalcode sowohl im Spyder- als auch im Jupyter-Notebook und erhalte das gleiche Ergebnis. Ich habe deinen Code sowohl in Spyder als auch in Jupyter ausprobiert. Spyder erzeugt ein ähnliches Ergebnis, aber Jupyter hängt (das Diagramm in einem neuen Fenster reagiert nicht). – iLoeng

Antwort

2

Die Beschriftungen müssen Klammern wie plt.xlabel("text") verwenden, die keinem String mit = zugewiesen sind, wie in Ihrem Beispielcode. Nehmen Sie die Änderungen in Ihrem Code vor, speichern Sie die Änderungen, beenden und öffnen Sie Spyder oder den von Ihnen ausgeführten Interpreter und führen Sie den Code erneut aus.

plt.figure(1) 
plt.scatter(pf["age"], pf["friend_count"]) 
plt.xlabel("age") 
plt.ylabel("friends count") 
plt.title("Facebook Friends count by Age") 
plt.show() 
+0

Versuchte Ihren Code, aber es funktioniert immer noch nicht. Ein Streudiagramm wurde ohne Beschriftungen und Titel angezeigt. Ähnlich wie beim ursprünglichen Problem vermute ich, dass das Streudiagramm aufgrund von plt.scatter() und nicht von plt.show() angezeigt wurde. – iLoeng

+0

@Andy Siehe meine aktualisierte Antwort. – wigging

+0

Danke. Es funktioniert jetzt. Was für ein Anfängerfehler! Prost – iLoeng