Wie visualisieren Sie eine nicht-lineare Beziehung in einem scatter-plot

Möchte ich visuell erkunden die Beziehung zwischen zwei Variablen. Die funktionale form der Beziehung ist nicht sichtbar im dichten scatter-plots wie diesen:

Wie visualisieren Sie eine nicht-lineare Beziehung in einem scatter-plot

Wie kann ich eine lowess smooth der scatter-plot in Python?

Oder haben Sie irgendwelche anderen Vorschläge visuell erkunden die nicht-lineare Beziehungen?

Ich habe Folgendes versucht, aber es funktionierte nicht richtig (die Zeichnung an einem Beispiel aus Michiel de Hoon):

import numpy as np
from statsmodels.nonparametric.smoothers_lowess import lowess
x = np.arange(0,10,0.01)
ytrue = np.exp(-x/5.0) + 2*np.sin(x/3.0)

# add random errors with a normal distribution                      
y = ytrue + np.random.normal(size=len(x))
plt.scatter(x,y,color='cyan')

# calculate a smooth curve through the scatter plot
ys = lowess(x, y)
_ = plt.plot(x,ys,'red',linewidth=1)

# draw the true values for comparison
plt.plot(x,ytrue,'green',linewidth=3)

Wie visualisieren Sie eine nicht-lineare Beziehung in einem scatter-plot

Den lowess smoother (rote Linien) ist seltsam.

EDIT:

Die folgende matrix enthält auch lowess smoothers (entnommen aus diese Frage CV):
Wie visualisieren Sie eine nicht-lineare Beziehung in einem scatter-plot

Hat jemand den code für ein Diagramm?

  • Sie scheinen zu haben, editiert diese Frage um eine neue Frage. Fragen Sie bitte eine separate Frage statt, so dass die Leute es finden können.
  • Ja, sorry, die neue Frage ist here.
InformationsquelleAutor tobip | 2014-05-21
Schreibe einen Kommentar