2016-05-04 8 views
0

Ich habe zwei numpy Arrays x und y. Jetzt möchte ich ein Streudiagramm speichern. Standardmäßig kann die Größe der Markierungen im Streudiagramm mit dem Parameter 's' geändert werden.Anpassung der Markergröße an reale Dimensionen im Streudiagramm

x = np.array([1,2,3,4]) 
y = np.array([2,3,4,5]) 
plt.scatter(x,y, s=0.1) 

Aber die s-Option ist in Punkten und nicht Einheiten der x- und y-Achse angegeben. Gibt es eine Möglichkeit, dies zu tun?

+0

Willkommen beim Stapelüberlauf. Was meinst du eigentlich mit "Einheiten der x- und y-Achse"? Können Sie ein Beispiel dafür geben, wonach Sie suchen? – kanayamalakar

Antwort

0

Es gibt einige andere stackoverflow.com Antworten auf die Probleme der Verwendung von Punkten^2 für Streudiagramme. Es lohnt sich, diese zu überprüfen.

x = np.array([1,2,3,4]) 
y = np.array([2,3,4,5]) 
plt.figure(figsize=(5, 5), dpi=80) 
''' 
i.e. 400x400 'dots' point^2 is proportional to area so 25% width of the 
width in 'dots' would be 100x100 giving s=10000. 

You can work out the size of the markers in term of the range of values 
in x and y, allowing for margins and the scale. 
''' 
plt.scatter(x,y, s=10000) 
plt.show() 
Verwandte Themen