数学:得到两点之间点的X

Mathematics: get X of Point between two points

假设我有两个点 [x1,y1], [x2,y2] 并且我知道 y1 小于 0 而 y2 更大。而且 x1 只比 x2 小 1 个像素。现在我需要一种方法来创建一个通过两个点的方程,然后我想知道方程 y0 点上的 x3 是什么。 // 当输入“0”作为 y 坐标时,x 方程会给我什么。

你知道方程式是这样的吗: x = ...x1...x2...y1...y2?

谢谢:)

编辑: 整个事情将在 JavaScript 脚本中表示,以显示离开视野的图表。所以请不要将其标记为题外话..

如果您只想要两点之间的中点的 x 坐标,那么它是:x = (x1 + x2) / 2 这是所讨论的 x 坐标的平均值。

你问的是如何找到通过两点的直线的方程式?

使用点斜率公式。

(1) y - y1 = m(x - x1)

米是坡度。你可以用你的两点来计算:

(2) m = (y2 - y1)/(x2 - x1)

选择原来的两个点之一,将它们的值连同斜率 m 代入方程 (1)。求解 y。该等式将具有以下形式:

y = mx + b

为 x 插入任意值以获得相应的 y 值。

求通过两点的直线方程,假设 P1 = [x1,y1] 和 P2 = [x2 ,y2],您可以执行以下操作:

  1. 求方程的斜率(梯度),例如 m,由方程 m = (y2-y1)/(x2-x1) 给出。
  2. 然后您可以使用所谓的 "point-slope form" 作为直线方程,由方程 y-y1 = m(x-x1) 给出,其中 "y"和 "x" 是方程中的变量,"y1" 和 "x1" 是位于该直线上的点的任意 y 和 x 值。在这种情况下,我们可以将"y1"和"x1"作为上面的点P1。
  3. 将相关值代入点 2 的方程(点-斜率形式)后,您就可以简化方程,得到一个以 x 或 y 表示的表达式,即 y = mx + c,或 x = (y-c)/m,其中 c 是常数。
  4. 当 y=0 时求 x 的值就像将值 0 代入方程的变量 "y" 一样简单,这将给出变量的相应值 "x" 你在找

例如,在你的具体情况下,我们有,给定点 P1 和 P2:

  1. m = (y2-y1)/(x2-x1) = (y2-y1)/(x2-x2+1) = y2-y1 ...因为 x1=x2-1
  2. 将m和点P1代入点斜率形式,我们得到y-y1 = (y2-y1)(x-x1) = (y2-y1)(x-x1) + y1 = y2( x-x1) - y1(x-x1-1)
  3. 因此 y = y2(x-x1) - y1(x-x1-1) 或 x = (x1(y2-y1)-y1+y)/(y2-y1) 其中 y1 < 0 < y2 , "y" 和 "x" 在两个方程中都是变量,其他都是常数。
  4. 当y=0时,由上式可得x = (x1(y2-y1)-y1)/(y2-y1),它是一个常数,因为它只完全由坐标组成P1 和 P2,它们是常量。

示例第 3 点中的方程式将是您在 JavaScript 中用于建模的方程式。

您可以参考this tutorial了解如何推导给定任意两点的线性方程。