Kurz gesagt, ich möchte eine Funktion schreiben, die scatter matrix und boxplot gleichzeitig in Python ausgeben wird. Ich dachte, ich würde dies tun, indem ich eine Figur mit einem 2x1 Plot-Array erstellt. Jedoch, wenn ich den Code unter Verwendung eines Jupyter Notebook laufen:Ausgabe von zwei Graphen gleichzeitig mit Matplotlib
def boxplotscatter(data):
f, ax = plt.subplots(2, 1, figsize = (12,6))
ax[0] = scatter_matrix(data, alpha = 0.2, figsize = (6,6), diagonal = 'kde')
ax[1] = data.boxplot()
ich, Daten mit pdf
genannt:
Das ist nicht genau das, was ich erwartet hatte - ich ausgeben wollte der Streumatrix und darunter der Boxplot, nicht zwei leere Gitter und ein Boxplot, eingebettet in eine Streumatrix.
Gedanken zur Behebung dieses Codes?
Dadurch werden die überflüssigen leeren Gitter entfernt, aber der Boxplot wird nicht aus der eingebetteten Streumatrix herausgedrückt. –
Hey, ich denke, dieses Verhalten ist fällig, weil Pandas Plotten bereits eine Figur innerhalb ihrer Funktion aufrufen. Das bedeutet, dass es immer angezeigt wird, wenn es angerufen wird. Wie auch immer, da die Funktion die Achsen zurückgibt, habe ich überprüft, ob es eine Möglichkeit gibt, diese Achsen von der Figur selbst zu entkoppeln und sie an ein Layout zu übergeben, das du willst (damit du später verschiedene Plots hinzufügen kannst). Wenn Sie dies lesen, stellt sich heraus, dass dies keine Option ist [link] (http://stackoverflow.com/questions/6309472/matplotlib-can-i-create-axessubplot-objects-then-add-them-to-a -figure-Instanz). – josecoto
^Fühlen Sie sich frei, dies in seine eigene Antwort zu drehen, ich denke, das beantwortet es mehr oder weniger für mich. –