2011-03-10 9 views
6

Ho una serie di punti che voglio tracciare in matplotlib, dire:Semplice arrotondamento della curva in matplotlib --- equivalente a "smooth bezier" di gnuplot?

x = [1,4,6,7,8] 
y = [0.2, 0.4, 0.5, 0.6, 0.6] 

In gnuplot, ho usato per essere in grado di utilizzare direttamente la struttura liscia del comando 'plot' per ottenere una curva regolare su un grafico , senza dover pre-elaborare i dati.

Esiste un equivalente in matplotlib --- specificare un insieme di punti, e dirgli come per lisciare, Bezier o spline o qualcosa del genere?

Se no, qual è il modo più semplice per realizzare questo?

+0

Ho aggiornato il link. – Paul

risposta

6

Penso scipy's interpolation and curve-fitting functions sono i più vicini che si sta per ottenere. Non conosco nulla di costruito in matplotlib.

+0

Ecco un collegamento al dosc più recente per [spline livellamento 1d di Scipy] (http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.interpolate.UnivariateSpline.html) – patricksurry

Problemi correlati