我正在尝试使用2度的numpy中的polyfit函数在2点x和y之间创建最佳拟合线.
fit = polyfit(x, y, 2)
fit_fn = poly1d(fit)
plot(x, y, 'k.', x, fit_fn(x), '--r', linewidth=1)
plt.xlabel("x")
plt.ylabel("y")
Run Code Online (Sandbox Code Playgroud)
我有点困惑为什么最合适的线条如此厚实而不是简单的线条.你在代码中做错了吗?

问题是你x没有排序.尝试
plot(x, y, 'k.', sort(x), fit_fn(sort(x)), '--r', linewidth=1)
Run Code Online (Sandbox Code Playgroud)
情节从"连接点" (x_0, fit_fn(x_0))来(x_1, fit_fn(x_1)).如果你x没有排序,那么这条线在整个地方都是锯齿形,使它看起来很厚.
| 归档时间: |
|
| 查看次数: |
475 次 |
| 最近记录: |