1

有没有办法强制 Apache 公共数学y = mx + 0通过原点 (0,0) 拟合形式 () 的线性曲线。到目前为止,我已经使用了 PolynomialCurveFitter 和 SimpleCurveFitter,但它们都没有返回通过原点的结果。例如:

final WeightedObservedPoints wopts = new WeightedObservedPoints();
//Add observed points to wopts: 
...
final PolynomialCurveFitter curveFitter = PolynomialCurveFitter.create(1);
double[] coeff = {0.0, 042};  //y = 0.042x + 0
curveFitter.withStartPoint(coeff);
final double[] bestPrediction = curveFitter.fit(wopts.toList());

但 bestPrediction[0] 不是 0.0 任何提示将不胜感激。

4

1 回答 1

0

在这一行:

  double[] coeff = {0.0, 042};

您使用八进制整数 042(即8*4 + 2)在内部转换为双精度值34.0

将线定义为:

  double[] coeff = {0.0, 0.42};
于 2020-01-17T22:35:10.023 回答