Plotten von 3d-Histogramm mit barplot in python matplotlib
Ich habe eine Nx3 matrix in scipy/numpy und ich möchte eine 3-dimensionale Balkengrafik aus, wo die X-und Y-Achsen sind bestimmt durch die Werte der ersten und zweiten Spalte der matrix, die Höhe der einzelnen Balken ist die Dritte Spalte in der matrix, und die Anzahl der bars ist bestimmt durch N.
In anderen Worten, wenn "Daten" ist die matrix dann:
data[:, 0] # values of X-axis
data[:, 1] # values of Y-axis
data[:, 2] # values of each Z-axis bar
und es sollte eine bar für jedes len(Daten)
Wie kann ich dies in Matplotlib?
Zweitens, wie dieser eine Variante, wie kann ich tun die gleiche Sache, aber diese Zeit-Histogramm die Balken in N bins in jede X -, Y -, Z-dimension? I. e. anstelle einer bar-für jeden Punkt, gerade Histogramm der Daten in diese Behälter in jeder dimension, und stellen Sie in einer bar für jeden bin.
vielen Dank für Eure Hilfe.
InformationsquelleAutor user248237dfsf | 2011-03-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist ein Beispiel ein 3D-Balkendiagramm.
Hier ist ein weiteres.
Numpy hat eine Funktion namens histogram2d zu tun, die rechteckigen Gruppierung, die Sie wollen.
Auch, wenn ich mit ax.scatter-Symbole, um eine 3D-Punktwolke, ist es automatisch plots einige Punkte mit alpha-Transparenz -- wie kann ich Sie entfernen, und Plotten Sie alle Punkte, keine Transparenz?
InformationsquelleAutor Paul
Hatte ich ein wenig eine harte Zeit, die Gestaltung der 'Höhen' meine Daten richtig aus den Beispielen, aber schließlich bekam es mit dem folgenden code. Hier, Z ist ein 3-dimensionales array mit allen meinen Daten, und die x-und rval sind im Grunde genommen die 2-d-Indizes der entsprechenden Datenpunkte.
InformationsquelleAutor cancerconnector