【问题标题】:Transform curve into linear将曲线转换为线性
【发布时间】:2014-06-23 10:51:51
【问题描述】:

如何将蓝色曲线值转换为线性(红色曲线)?我在 excel 中做一些测试,但基本上我在 3D 应用程序中有那些蓝线值,我想用 python 操作,所以我可以使这些值线性。有没有我遗漏的数学方法?

x 轴从 0 到 90,y 轴从 0 到 1。

例如:在图表中间,蓝线给了我一个值“0,70711”,我知道线性它是“0,5”。我想知道是否有一个简单的公式可以将所有传入的非线性值转换为线性值。

我不知道什么“公式”在创建非线性蓝线,也忽略黄线,因为我只是试图“逆向工程”看看是否会导致我得出任何结论。

谢谢

【问题讨论】:

  • 您是否试图找到最适合蓝色曲线的线?
  • 我想转换蓝色曲线值以匹配红色曲线值(线性)。

标签: excel math


【解决方案1】:

找到一个线性函数y = ax + bx = 0 给出值1x = 90 给出0,就像用蓝色曲线表示的函数一样。

在这种情况下,您的方程组如下:

1 = b // for x = 0
0 = a*90 + b // for x = 90

求解器提供的解决方案如下:{ a = -1/90, b = 1 },红色线性函数的形式为y = ax + b,我们把从求解器中找到的 a 和 b 的值放入,我们发现您正在寻找的线性函数是y = -x/90 + 1

我用来解方程组的工具:

http://wims.unice.fr/wims/en_tool~linear~linsolver.en.html

【讨论】:

  • 对不起,我数学不好,假设我在蓝线上有值“0,70711”,你能举个例子说明如何使它成为线性吗?
  • 当然,假设 x = 10(示例)你的值是 0,70711,你需要解一个方程:0,70711 = a*10 + b,换句话说,找到数字a 和 b 将使等式的左侧和右侧相等。一点没有意义,因为你将有无限数量的解决方案(想象有多少条线可以通过一个点)......但是一旦你有两个,在这种情况下,第一个和最后一个,你可以用一个解建立一个由两个方程组成的系统,这将是你的线性函数。把你的蓝色函数的第一点和最后一点告诉我,我会告诉你的。
  • 曲线(红色或蓝色)开头始终为 1,结尾始终为 0。 x 从 0 到 90。一个问题是我无法在需要操作值的 3D 应用程序中访问 x (0-90)。我拥有的唯一值是蓝线(非线性)。谢谢
  • 在这种情况下,您的方程组如下: 1 = b // 对于 x = 0 0 = a*90 + b // 对于 x = 90 求解器提供的解决方案如下: { a = -1/90, b = 1 },红色的线性函数将具有y = ax + b 的形式,我们把从求解器中找到的 a 和 b 的值放入,我们发现您正在寻找的线性函数是 y = -x/90 + 1 。我用来解方程组的工具:wims.unice.fr/wims/en_tool~linear~linsolver.en.html
  • -x/90 + 1 有效,但正如我在上一条评论中所说的那样,我无法访问 x。我猜这可能不可行。无论如何,谢谢马雷克
【解决方案2】:

你到底是什么意思?您可以像这样计算红线上的点:

f(x) = 1-x/90

然后重点是(x,f(x)) = (x, 1-x/90)。不过说实话,我觉得你的问题还是比较不清楚的。

【讨论】:

  • 感谢亚历克斯的回复。很抱歉造成混淆,我需要将蓝线中的任何值转换为红线(线性)。而且我在 3D 应用程序中只有蓝线值,所以我需要一个公式来“线性化”这些值。
  • 1-x/90 有效,但我在 3D 应用程序中没有 x,我只有蓝线值。
猜你喜欢
  • 1970-01-01
  • 2013-06-07
  • 1970-01-01
  • 2018-08-04
  • 1970-01-01
  • 2016-02-24
  • 1970-01-01
  • 1970-01-01
  • 2011-03-10
相关资源
最近更新 更多