Engee 文档
Notebook

多项式模型的构建

在本示例中,将使用多项式库演示不同阶多项式的构建及其可视化。

安装构建多项式所需的多项式库:

In [ ]:
Pkg.add("Polynomials")

启动多项式库:

In [ ]:
using Polynomials

形成一组数据以构建多项式:

In [ ]:
xs = collect(0:20); ys = @. exp(-xs) + sin(xs);

构建多项式模型

In [ ]:
pol1 = fit(xs,ys,1)
pol5 = fit(xs,ys,5)
pol9 = fit(xs,ys,9)
pol20 = fit(xs,ys,20)
println(pol1)
0.411552 - 0.0288685*x

启动绘图库

In [ ]:
using Plots

绘制所得多项式的图形:

In [ ]:
scatter(xs,ys,label="исходные данные")
plot!(pol1, extrema(xs)..., label="полином 1-й степени")
plot!(pol5, extrema(xs)..., label="полином 5-й степени")
plot!(pol9, extrema(xs)..., label="полином 9-й степени")
plot!(pol20, extrema(xs)..., label="полином 20-й степени")
Out[0]:

结论

本例演示了多项式的构造及其可视化。从图中可以估算出多项式的阶数对原始数据集拟合的影响程度。