Ho usato l'interpolazione spline per arrotondare una serie temporale e vorrei anche aggiungere una linea orizzontale alla trama. Ma sembra esserci un problema che è fuori dalle mie mani. Qualsiasi assistenza sarebbe davvero utile. Ecco quello che ho:Tracciare una linea orizzontale usando matplotlib
annual = np.arange(1,21,1)
l = np.array(value_list) # a list with 20 values
spl = UnivariateSpline(annual,l)
xs = np.linspace(1,21,200)
plt.plot(xs,spl(xs),'b')
plt.plot([0,len(xs)],[40,40],'r--',lw=2)
pylab.ylim([0,200])
plt.show()
problema sembra essere con il mio uso di [0,len(xs)]
per la linea tracciato orizzontale.
Funziona. Grazie! – Ibe
Funziona, ma non è particolarmente efficiente, specialmente perché stai creando un array potenzialmente molto grande a seconda dei dati. Se hai intenzione di farlo in questo modo, sarebbe più intelligente avere due punti dati, uno all'inizio e uno alla fine. Ancora, matplotlib ha già una funzione dedicata per le linee orizzontali. – BlivetWidget