Maison  >  Article  >  développement back-end  >  Comment créer des lignes lisses dans PyPlot ?

Comment créer des lignes lisses dans PyPlot ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-01 20:31:29194parcourir

How to Create Smooth Lines in PyPlot?

Traçage de lignes lisses avec PyPlot

PyPlot propose diverses méthodes pour personnaliser les visualisations de données. Une tâche courante consiste à lisser les lignes entre les points tracés pour créer une apparence plus continue. Bien que la création de lignes lisses dans Gnuplot soit simple à l'aide de l'option "smooth cplines", PyPlot nécessite une approche légèrement différente.

Lisser les lignes avec scipy.interpolate

Une solution est pour utiliser le module scipy.interpolate. Ce module fournit un outil puissant nommé spline, qui peut générer des courbes interpolées en ajustant une fonction spline via un ensemble de points de données. Voici un exemple :

<code class="python">from scipy.interpolate import spline

# 300 represents the number of points to generate between T.min and T.max
xnew = np.linspace(T.min(), T.max(), 300)  

power_smooth = spline(T, power, xnew)

plt.plot(xnew,power_smooth)
plt.show()</code>

Ce code créera une courbe lisse en ajustant une spline à travers les points de données d'origine.

Dépréciation de la spline

Notez que dans scipy version 0.19.0 et versions ultérieures, la fonction spline était obsolète. Pour maintenir la compatibilité, vous pouvez utiliser la classe BSpline comme indiqué ci-dessous :

<code class="python">from scipy.interpolate import make_interp_spline, BSpline

# 300 represents the number of points to generate between T.min and T.max
xnew = np.linspace(T.min(), T.max(), 300) 

spl = make_interp_spline(T, power, k=3)  # type: BSpline
power_smooth = spl(xnew)

plt.plot(xnew, power_smooth)
plt.show()</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn