2017-04-04 3 views
1

Ich erstelle eine große Scatter-Matrix und möchte den Text so ändern, dass er ordentlich ist, ausgerichtet ist, sich nicht überlappt usw. Um dies zu tun, möchte ich die Schriftgröße reduzieren und die Textrotation ändern (und alles andere angemessen). Wie könnte ich das tun?Wie können die Größen und Rotationen von Text einer Pandas Streumatrix eingestellt werden?

Der folgende Versuch nicht funktioniert hat: die Achsen

scatter_matrix = pd.scatter_matrix(
    data, 
    figsize = [15, 15], 
    marker = ".", 
    s  = 0.2, 
    diagonal = "kde" 
) 
plt.xticks(fontsize = 2, rotation = -90) 
plt.yticks(fontsize = 2) 
plt.savefig("scatter_matrix.jpg", dpi = 700) 
+2

Sieht aus wie Sie bereits wissen, wie Schriftgröße und Textdrehung zu ändern. Was ist deine eigentliche Frage? – Goyo

+3

"hat nicht funktioniert" ist keine ausreichende Problembeschreibung. Was ist das Ergebnis, inwieweit ist es nicht das, was du willst? Seien Sie präzise über Ihre Anforderung ("Ich will eine gepflegte Handlung" ist unmöglich, eine Antwort zu geben). – ImportanceOfBeingErnest

+0

@Goyo Ich versuchte zu veranschaulichen, dass sich die Schriftgröße und die Textrotation nicht änderten, indem Bilder der Ergebnisse hochgeladen wurden. Die Lösung von piRSquared zeigt an, dass man alle Plots durchlaufen muss, um ihre Eigenschaften einzeln zu ändern. – BlandCorporation

Antwort

2

Der Grund, warum es nicht funktioniert, ist, dass ein scatter_matrix numpy Array ist. plt kann nicht auf allen diesen Achsen gleichzeitig arbeiten. Sie müssen sie durchlaufen und Anpassungen vornehmen.

scatter_matrix = pd.scatter_matrix(
    data, 
    figsize = [15, 15], 
    marker = ".", 
    s  = 0.2, 
    diagonal = "kde" 
) 

for ax in scatter_matrix.ravel(): 
    ax.set_xlabel(ax.get_xlabel(), fontsize = 20, rotation = 90) 
    ax.set_ylabel(ax.get_ylabel(), fontsize = 20, rotation = 0) 

enter image description here

+0

Hey, danke für deine klare Antwort. Ich hatte nicht erkannt, dass Iteration notwendig war und die "Ravel" -Methode ist großartig. – BlandCorporation

+0

@BlandCorporation Sie sind herzlich willkommen – piRSquared

+0

Die Dokumentation für 'ravel' ist hier: https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.ravel.html –

Verwandte Themen