Python平滑线(Matplotlib)使用BSpline?

2024-04-19 19:54:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在我的图表中平滑下面的红线(在x轴上大约150有点颠簸,但是做起来有点问题,因为我看到的所有示例都使用spline,这已经不推荐了(告诉我使用BSpline,我找不到任何好的教程)

代码是:

y = np.array([476,310,254,190,184,182,161,154,148,133,127,119,117,103,102,96,95,95,91,84,82,71,65,64,64,64,62,61,49,
 42,38,37,33,30,29,22,22,18,16,16,16,14,12,12,11,10,9,9,9,8,8,6,6,5,4,4,4,4,3,2,1,1])

x = np.array([19,40,35,43,19,18,35,15,31,12,22,19,33,19,43,55,17,6,21,26,20,21,14,53,30,13,42,43,51,43,24,30,36,13,41,41,41,50,56,50,
44,64,58,42,18,30,78,22,11,25,25,50,50,60,100,25,25,0,67,100,100,0])

j = np.array([29,32,34,36,37,37,38,38,39,40,40,41,41,43,43,43,43,43,44,45,45,47,48,48,48,48,
 49,49,52,55,56,57,59,60,61,66,66,71,73,73,73,77,81,81,83,86,89,89,89,92,92,102,
 102,109,118,118,118,118,132,154,201,201])

plt.figure(figsize=(15,8))
plt.ylim(0, 100)
plt.scatter(y,x)
plt.plot(y,j, 'red', linestyle=':', dashes=(1, 5), linewidth=1)
plt.show() 

图形图片:

enter image description here

有什么建议吗?你知道吗


Tags: 代码示例plotnp图表教程pltarray