如何计算一组值的逻辑曲线?
How to calculate a logical curve along a set of values?
我正在尝试采用具有任意最小和最大可能值的浮点值,并将其转换为线性刻度,以便在条形指示器上表示。问题是,我不能只在最小值和最大值之间插入它,因为最大值总是会大大高于最小值。我有一个任意值数组,我想将它们用作最小值和最大值之间的中间点。现在我只需要计算通过这些点的逻辑最佳拟合曲线。每个值总是比上一个大,并且值的增加速度越往上越快,但是没有简单的公式可以计算这个加速度。
以下是可以使用的值的示例:
6.0、13.5、30.0、75.0、375.0
其中 6 是最小值,375 是最大值。
如果 x 恰好是这些值之一,我想要一个简单的值,具体取决于总值的数量,即 0、0.25、0.5、0.75、1。问题是计算中间值。
我将如何实现这一目标?如果已经有人问过这样的问题,我深表歉意,因为这感觉像是一个常见问题,尽管我不知道要搜索什么。如果之前已经回答过这个问题,请指出正确的方向。
根据要求重新发布我的评论作为答案。
如果一条曲线可能是 y(x) = k^(ax+b),对两边取对数,你就有一个线性关系。正如所指出的那样,这是数学而不是编程。
为了更容易实现,我会选择 k = 2、e 或 10; a & b 你从数据中算出来。
我正在尝试采用具有任意最小和最大可能值的浮点值,并将其转换为线性刻度,以便在条形指示器上表示。问题是,我不能只在最小值和最大值之间插入它,因为最大值总是会大大高于最小值。我有一个任意值数组,我想将它们用作最小值和最大值之间的中间点。现在我只需要计算通过这些点的逻辑最佳拟合曲线。每个值总是比上一个大,并且值的增加速度越往上越快,但是没有简单的公式可以计算这个加速度。
以下是可以使用的值的示例:
6.0、13.5、30.0、75.0、375.0
其中 6 是最小值,375 是最大值。 如果 x 恰好是这些值之一,我想要一个简单的值,具体取决于总值的数量,即 0、0.25、0.5、0.75、1。问题是计算中间值。
我将如何实现这一目标?如果已经有人问过这样的问题,我深表歉意,因为这感觉像是一个常见问题,尽管我不知道要搜索什么。如果之前已经回答过这个问题,请指出正确的方向。
根据要求重新发布我的评论作为答案。
如果一条曲线可能是 y(x) = k^(ax+b),对两边取对数,你就有一个线性关系。正如所指出的那样,这是数学而不是编程。
为了更容易实现,我会选择 k = 2、e 或 10; a & b 你从数据中算出来。