Ich möchte ein Streudiagramm von pandas DataFrame mit kategorischen Zeilen- und Spaltenbeschriftungen mit matplotlib
erstellen. Ein Beispiel-DataFrame sieht folgendermaßen aus:
Die Markergröße ist die Funktion der jeweiligen DataFrame-Werte. Bisher habe ich eine schwierige Lösung gefunden, die die Zeilen und Spalten im Wesentlichen aufzählt, die Daten grafisch darstellt und dann die Beschriftungen rekonstruiert:
%Vor%Nun, Frage: Gibt es eine intuitivere, besser integrierte Art, dieses Streudiagramm zu erstellen, idealerweise ohne die Daten und Metadaten zu teilen?
Vielleicht nicht die gesamte Antwort, die Sie suchen, sondern eine Idee, die Ihnen hilft, Zeit und Lesbarkeit mit der Codezeile flat=
zu sparen.
Pandas Entstapelung Methode erzeugt eine Serie mit einem MultiIndex .
%Vor% Der MultiIndex enthält die notwendigen x- und y-Punkte, um das Diagramm zu erstellen (in labels
). Hier weise ich levels
und labels
informativeren Variablennamen zu, die besser zum Plotten geeignet sind.
Plotting ist ziemlich einfach von hier.
%Vor% Ich habe es auf ein paar verschiedenen DataFrame
Shapes versucht und es schien zu halten.
Tags und Links python matplotlib pandas dataframe scatter-plot