Scatterplot mit verschiedenen Größe, Marke und Farbe von pandas dataframe
Ich versuche zu tun, ein Streudiagramm mit Geschwindigkeit in Metern für jeden Punkt, wo die marker zeigen die verschiedenen Arten, Größe zeigen die verschiedenen Strichstärken und Farben angeben, wie alt ein Punkt ist, über 10 Minuten-Skala. Allerdings war ich nur in der Lage zu zeichnen, die von der Größe so weit.
Jede Hilfe wird sehr geschätzt.
x = {'speed': [10, 15, 20, 18, 19], 'meters' : [122, 150, 190, 230, 300], 'type': ['phone', 'phone', 'gps', 'gps', 'car'], 'weight': [0.2, 0.3, 0.1, 0.85, 0.0], 'old': [1, 2, 4, 5, 8]}
m = pd.DataFrame(x)
plt.scatter(m.meters, m.speed, s = 30* m.weight)
mkr_dict = {'gps': 'x', 'phone': '+', 'car': 'o'}
meters speed type weight old
0 122 10 phone 0.20 1
1 150 15 phone 0.30 2
2 190 20 gps 0.10 4
3 230 18 gps 0.85 5
4 300 19 car 0.00 8
Aktualisiert Frage:
Ich versuche, hinzufügen Farbskala die Farbskala basiert auf der alten. es funktionierte, wenn ich das Komplott gegen das gesamte dataset, scheiterte aber nach dem Versuch auf "marker hinzufügen" für jede Teilmenge. Irgendeine Idee?
plt.scatter(m.meters, m.speed, s = 30* m.weight, c=m.old)
cbar = plt.colorbar(ticks = [0, 5, 10])
cbar.ax.set_yticklabels(['New','5mins', '10mins'])
TypeError: Sie müssen zuerst set_array für abbildbar
InformationsquelleAutor Kexin Xu | 2015-05-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
scatter
nur einer Art von marker in einer Zeit, so haben Sie, um eine Darstellung der verschiedenen Arten getrennt. Zum Glück pandas ist dies einfach:.... Wo ist das Auto? Gut, das Gewicht ist 0.0 in der original-test-Daten, und wir sind mit Gewicht für die marker-Größe, also: kann es nicht sehen.
InformationsquelleAutor cphlewis
Wenn Sie nur ein paar Punkte, denn hier können Sie eine Liste der Schwimmer, die
c
argument:Ihre farbige Punkte in der angegebenen Reihenfolge. Alternativ verwenden Sie eine Farbpalette:
Ändern der marker-Formen sind, müssen Sie entweder Ihre eigene
Patch
es, oder fügen Sie einen Punkt zu einer Zeit: z.B.(Ich habe skaliert die
m.weight
auf einen anderen Bereich zu sehen, der 5. Punkt, das sonst Größe 0.0).InformationsquelleAutor xnx