Ich habe versucht, eine glatte Linie aus diesen Werten zu erstellen, aber ich kann keine negativen Werte in meinem Ergebnis haben. Bisher geben alle Methoden, die ich versucht habe, negative Werte. Würde etwas Hilfe lieben.Interpolieren ohne negative Werte in Python
import matplotlib.pyplot as plt
from scipy.interpolate import UnivariateSpline
import numpy as np
y = np.asarray([0,5,80,10,1,10,40,30,80,5,0])
x = np.arange(len(y))
plt.plot(x, y, 'r', ms=5)
spl = UnivariateSpline(x, y)
xs = np.linspace(0,len(y)-1, 1000)
spl.set_smoothing_factor(2)
plt.plot(xs, spl(xs), 'g', lw=3)
plt.show()
Groß ! Genau das, was ich brauchte – user4421975