如何在图表上绘制 android 中的最佳拟合线?

how to draw line of best fit in android on a graph?

我正在制作一个 android 应用程序,我需要在其中根据用户在运行时输入的数据绘制图形,并使用这些数据绘制一个简单的折线图,但该线将是一条线最适合。用户每天最多只会输入 3-4 次数据。

我知道那里有一些库,例如 androidplot 和 MPandroidchart。我从应用商店下载了这两个的演示,MPandroidchart 看起来更有吸引力。

但是,这些库中的 none 在演示中有一个图表,其中显示了一个具有最佳拟合线的图表。

所以我想知道这两个库中的任何一个是否允许您绘制一条最佳拟合线,或者您是否必须根据数据点手动计算直线的斜率,然后使用该库在图表?

你们也可以推荐我可以使用哪个库来做我需要做的事情吗?我是 android 的新手,所以我更喜欢易于使用且具有良好 tutorials/support 或受欢迎的库,这样我可以向人们提问并及时得到答案。

您可以根据这些库中的任何一个绘制一条最适合的线,但正如您怀疑的那样,您需要自己进行线性回归。可能有一些库专注于可视化包含这些计算的数学函数,但通常绘图库只会提供一种以 f(x) 的形式或作为一系列原始点来实现的方法。

好消息是自己做数学部分很容易,而且几乎其他人都在做:

  • 编写一个 class 或方法来计算给定一系列点的最佳拟合线。 This example 似乎是一个合理的起点。
  • 通过您的实施传递您的数据并获得斜率。
  • 使用斜率生成要绘制的数据集。如果您使用的是 Androidplot,您也可以只实现 XYSeries 接口并在 getY(i) 方法中使用上面计算的斜率执行 f(x)。