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]:

结论:

在这个例子中,演示了多项式的构造及其可视化。 使用该图,您可以估计多项式的程度对其与原始数据集的拟合有多大影响。