繁体   English   中英

如何在 qt creator 中向我的图表添加趋势线?

[英]How to add a trendline to my graph in qt creator?

我想在 qt creator 中向我的图表添加趋势线,但我不知道如何,有人可以告诉我在 qt creator c++ 中执行此操作的方法。从字面上看,我不知道如何在折线图上添加趋势线 plot,请建议我一个方法。

顺便说一下,这不是一个特定的 QtCreator 问题。 您知道如何用数学方法计算趋势线吗?

坡:

在此处输入图像描述

抵消:

在此处输入图像描述

趋势线公式:

在此处输入图像描述

在哪里

a is slope
x is the horizontal axis value
b is the Y-intercept

通常情况下,您有散布的数据构成您的图表。 无论您使用 QtWidget 还是 QML 都可以按照以下步骤操作。

  • 首先,找到 x 值的平均值和 y 值的平均值。

  • 接下来,找出每个 x 值与 x 值的平均值之间的距离,以及每个 y 值与 y 值的平均值之间的距离。

  • 然后将(x(i) - X(i)) by (y(i) - Y(i)) ,然后将(x(i) - X(i))乘以自身。

  • 得到第一个公式 ( (x(i) - X(i)) by (y(i) - Y(i)) )和第二个公式( (x(i) - X(i)) )的总和

  • 通过将第一个公式总和除以第二个公式总和来找到斜率 a。

  • 获取 x 和 y 的平均值并使用趋势线公式找到 b 值:y = ax + b 所以 b = y - ax

然后你就有了你想要应用趋势线方程的一切

使用您的等式,您现在可以使用两点在 QCustomPLot 上绘制线趋势:

QCPItemStraightLine *trendLine = new QCPItemStraightLine(customPlot);
trendLine->point1->setCoords(x, y);  // location of point 1 in plot coordinate
trendLine->point2->setCoords(xx, yy);  // location of point 2 in plot coordinate

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM