C#Math.Net-如何正确设置Fit.Curve的参数
我正试图拟合一条曲线来拟合数据,比如 到目前为止,我得到的是:C#Math.Net-如何正确设置Fit.Curve的参数,c#,math.net,C#,Math.net,我正试图拟合一条曲线来拟合数据,比如 到目前为止,我得到的是: public IList<OxyPlot.DataPoint> Points { get; private set; } public MainViewModel() { Points = new List<DataPoint> { new DataPoint(38 , 6.5 ), new DataPoint(59 , 7 ),
public IList<OxyPlot.DataPoint> Points { get; private set; }
public MainViewModel()
{
Points = new List<DataPoint>
{
new DataPoint(38 , 6.5 ),
new DataPoint(59 , 7 ),
new DataPoint(81 , 8 ),
new DataPoint(103 , 12 ),
new DataPoint(125 , 12.2 ),
new DataPoint(147 , 16 ),
new DataPoint(168 , 15.5 ),
new DataPoint(190 , 16.5 ),
new DataPoint(211 , 18 ),
new DataPoint(213 , 19 ),
new DataPoint(215 , 18.5 ),
new DataPoint(219 , 18 ),
new DataPoint(221 , 19 ),
new DataPoint(224 , 18.8 ),
new DataPoint(226 , 18.3 ),
new DataPoint(229 , 18.4 ),
new DataPoint(231 , 19.2 ),
new DataPoint(232 , 20.4 ),
new DataPoint(234 , 19.1 ),
new DataPoint(235 , 18.4 ),
new DataPoint(236 , 19.8 ),
new DataPoint(237 , 19.2 ),
new DataPoint(238 , 18.9 ),
new DataPoint(239 , 18.8 ),
new DataPoint(240 , 18.2 ),
new DataPoint(241 , 16 ),
new DataPoint(242 , 12 ),
new DataPoint(243 , 9 ),
new DataPoint(244 , 5 ),
new DataPoint(245 , 2 ),
new DataPoint(246 , 1 ),
new DataPoint(247 , 0 ),
new DataPoint(248 , 0 ),
};
var f = new Func<double, double, double, double>((x, A, B) => A * x + B * x + A * B * x * x);
var result = Fit.Curve(Points.Select(p => p.X).ToArray(), Points.Select(p => p.Y).ToArray(), f , 20.0) ;
1) 如果你在这里得不到答案,也许那边的人可以帮忙。2) 它是一条曲线,还是与截止点的线性关系?给定“非线性最小二乘拟合点(x,y)到任意函数y:x->f(p,x),返回其最佳拟合参数p,”initialGuess
将是您对p值的初始猜测。假设你知道y=a(x*x)和2.7f(p,x),返回其最佳拟合参数p,”initialGuess
将是您对p值的初始猜测。假设你知道y=a(x*x)和2.7Func<double, double, double> f,
double initialGuess