如何在Excel中找到4个数据点的x和y坐标截距?

问题描述 投票:1回答:2

我有两个点形成一行:(1,4)和(3,6),另外两个形成另一行:(2,1)和(4,2)。这些线是连续的,我可以通过找到每条线的等式找到它们的交点,然后将它们等于找到交点处的x值,然后找到y值。

即,对于第一行,等式是y = x + 3,第二行是y = 0.5x。在交叉点,y值相同,因此x + 3 = 0.5x。所以x = -6。将其反馈到任一方程中得到的y值为-3。

从这些步骤开始,我现在知道交点是(-6,-3)。问题是我需要在Excel中执行相同的步骤,最好是作为一个公式。谁能给我一些关于如何开始这个的建议呢?

math excel-formula
2个回答
3
投票

它很长但是在这里:为第一行定义x1,y1和x2,y2,为第二行定义x3,y3和x4,y4。

x = (x2y1-x1y2)(x4-x3)-(x4y3-x3y4)(x2-x1) / [ (x2-x1)(y4-y3) - (x4-x3)(y2-y1) ]
y = (x2y1-x1y2)(y4-y3)-(x4y3-x3y4)(y2-y1) / [ (x2-x1)(y4-y3) - (x4-x3)(y2-y1) ]

请注意,分母是相同的。他们将是零!当系统没有解决方案时。因此,您可能需要在另一个单元格中检查并有条件地计算答案。

本质上,通过使用通用点(x1,y1),(x2,y2),(x3,y3)和(x4,y4)手动求解x和y的方程组来导出该公式。更简单的是,使用完善的线性代数概念手动解决系统。

维基百科很好地概述了这个程序:Line-line intersection.

此外,该网站描述了所有不同的公式,并允许您以任何混合格式输入您拥有的任何数据,并提供解决方案的许多细节:Everything about 2 lines.


1
投票

这是一个基于矩阵的解决方案:

x - y = -3
0.5*x - y = 0

写成矩阵方程式(我为可怜的排版道歉):

| 1.0  -1.0 |{ x }   { -3 }
| 0.5  -1.0 |{ y } = {  0 }

您可以反转此矩阵或使用LU分解来解决它以获得答案。该方法适用于任何数量的情况,其中每个未知数都有一个等式。

这很容易手工完成:

  1. 从第一个减去第二个等式:0.5 * x = -3
  2. 将两边除以0.5:x = -6
  3. 将此结果替换为另一个等式:y = 0.5 * x = -3
© www.soinside.com 2019 - 2024. All rights reserved.