通过 3D 点拟合直线嘿大家,
我有一个 3D 点 (x,y,z) 列表,我需要将其拟合成一条线。我尝试拟合三种不同的模型,每个模型都使用列的平衡来预测自输出(如 Y(x,z)),但使用三个输出并没有给我一条线。我能做的最好的事情就是使用 Y(z) 和 X(z),然后使用 z 的值作为最终预测的最佳拟合 (x,y,z)。然而,我对没有预测的 Z 值感到不满意。我还尝试使用行号 Z(row#) 作为预测 az 值的方法,但这可能仅在这种情况下有效,因为 z 是沿零件的移动,因此它的变化与检查头的变化相关检查点之间的移动。
使用三个 OLS 模型 y(z)、X(z)、Z(row#)


请参阅附件,了解可配合使用的数据,并感谢您的任何想法!
基础数据分析和建模回复:通过 3D 点拟合直线我很难理解在 3 维中拟合直线的想法。有一个独特的最佳拟合平面,但我只认为有一个唯一的最佳拟合线指定 3 个维度中的 2 个维度。您似乎已经完成了那些二元拟合,但您正在寻找什么。另外,如果您的问题并不是很笼统,而是特定于您发布的数据,则 X 和 Y 几乎完全相关,因此您实际上只有 2 个维度。这就是为什么你的 X vs Z 和 y vs Z 拟合几乎相同(尽管显然不是线性的)。
回复:通过 3D 点拟合直线我只是堆叠了您想要绘制的 2 个 z 变量,然后使用平台的颜色功能来显示曲面和线条

回复:通过 3D 点拟合直线感谢 dlehman1 的思考,我也对这个问题感到有点斗鸡眼。我正在尝试帮助一位同事模仿检查程序正在执行的操作,以便他可以比较结果。该程序将拟合一条穿过 3D 点的线,然后给出最佳拟合点和测量点之间的距离测量值。我在网上读了一些文章,但没有什么真正让我感兴趣(我脑子里有很多数学讨论!)。一篇文章建议使用 PCA,但当我尝试这个并让它预测 X、Y 和 z 值时,它没有给出一条线。
是的,有趣的是 Y 和 X 如此相关。
我会继续思考,如果您需要我提供任何其他信息来解决问题,请告诉我。
史蒂夫
回复:通过 3D 点拟合直线你好@shampton82 ,
我和@dlehman1有了这个,因为 3D 中的一条线总是可以通过坐标系的转换分解为两个独立变量,如 X & Y 或 Y & Z,因此包含该线的唯一平面。 但你的数据似乎有所不同。 我仍然不明白在 3D 中拟合直线的整体意义。 如果你真的必须这样做,我想我只是改变你的坐标系,因为包含“3D”数据的平面只是沿着 XY 对角线。
就您共享的数据而言,您似乎对某个物体进行了轮廓测量,这些测量是在 z 方向上以 75 个单位(毫米、微米、纳米?)的固定间隔进行测量的。 查看 x vs z 和 y vs z 配置文件,它确实看起来很像 AFM 数据或类似数据。 由于 X 和 Y 的相关性如此之强,几乎就好像它只是栅格了 231 个单位(Y 中)的步长——拟合 Y by X 图中的截距——然后再次测量该项目。
我不太明白的一件事是你想从你使用的这个程序中获取什么样的信息——你提到它适合一条穿过 3D 点的线,然后给出距最佳拟合的距离测量值和测量点? 这本质上是在查看拟合的残差——您正在查看数据与您的拟合的距离有多远。 您想预测残差吗? 您真的想预测 Z 值,还是想预测 X 和 Y? 您共享的数据中拟合的线预测的是 X 和 Y,而不是 Z。
这里有很多东西我不太明白,但我认为这可能是因为你无法分享所有内容。 然而,您分享并保持匿名的程度越多,我们就越能帮助您获得所需的解决方案。
希望这可以帮助!,
DS
回复:通过 3D 点拟合直线凉爽的!您有机会展示制作该图表的步骤吗?
回复:通过 3D 点拟合直线谢谢@SDF1 !
我承认这很困难,因为我正在努力帮助远在另一家工厂的同事,所以我没有所有细节,在剖析数据时弄清楚。我得到了与您相同的结论,X 和 Y 似乎是测量头的检查路径,而 Z 似乎是零件表面轮廓的主要组成部分。

命中间距的分布存在一些奇怪的情况(甚至在其自身顶部有一个,并且 Z 值差异很大),以及为什么不能遵循直线,所以我认为他们有一些 MSA 问题需要解决也应对。
我不确定他们为什么需要 3D 空间中的增量,我将尝试从他们那里获取更多详细信息。
由于它位于对角线上,我还打算尝试旋转平面,然后使用 Z(x) 找到最终的拟合。有趣的是,我发现通过使用 Y 和 X 的正交回归并将方差设置为相等,我可以获得 Y 和 X 的最佳拟合线,该线将输出预测的 Y 和 X。因此,我认为旋转这些正交值 (OV),然后拟合旋转的 X 的 OV 与 Z 值将允许我将一条线拟合到 Z 值,因此我将获得 x、y 和 z 的预测变量。
如果我得到任何其他信息,我会让您知道进展如何。感谢所有的投入!!
史蒂夫
回复:通过 3D 点拟合直线- 使用 Tables=>Stacked 平台堆叠预测 Z 和不同预测 Z 列
- 开放3D散点图平台
- 选择 X、Y 和数据列作为 Y 列
- 选择标签列作为颜色列
- 单击“确定”
回复:通过 3D 点拟合直线啊,谢谢吉姆!!
回复:通过 3D 点拟合直线嘿@SDF1 , @tx尼尔森, 和@dlehman1
我想我明白了!
第一步是使用正交回归在方差相等的假设下最好地拟合一条线。在 JMP 中,您可以输出 X 和 Y 的预测值。

现在我们需要旋转该线,使其垂直于 X 或 Y。我选择X。这需要将线和数据点旋转 39.06 度(由拟合线的斜率 0.811473 确定)
然后我们通过 X 执行 Y 拟合,其中 x 是旋转的预测 X 值,Y 是 Z 原始数据值。
然后,您保存该模型的公式预测,从而根据 3D 中的最佳拟合线预测了 x、y 和 z 值。

如果您希望所有值不在对角线上,则可以将旋转的预测 Y 和 X 与预测 Z 值一起使用。
我附上了带有公式的数据表,以防有人遵循。
我还根据下面的 txnelson 建议添加了堆叠数据表,以覆盖两个效果很好的数据源,并创建了上面的图表。
回复:通过 3D 点拟合直线你好@shampton82 ,
是的,通过将 3D 数据投影到单个平面(XZ 或 YZ)上,然后继续拟合直线来旋转坐标系,您是正确的。 这将考虑 cos(theta) 或 sine(phi) 投影到您需要的任何坐标平面上。
不是您手头具体问题的主题大师,我仍然不太明白将一条线拟合到高度非线性数据集然后计算残差的目的,但是如果这是需要的,那么这就是这样做的方法。
很高兴听到您在为同事找到解决方案方面取得了进展。
DS
回复:通过 3D 点拟合直线嘿史蒂夫,
我认为主成分分析是一个很好的方法。 在某种程度上,第一个主成分是穿过 3D 数据点云的最佳拟合线。
要将第一个主成分转换为原始 XYZ 坐标系,请从 PCA 报告中的红色小三角中选择“保存列 > 将预测保存为成分公式”。 附工作流程。
-------------------
编辑添加:
根据您想要完成的任务,您可能需要为 PCA 选择“未缩放”而不是“标准化”。 还附上未缩放的版本。
回复:通过 3D 点拟合直线谢谢乔丹,这太棒了!当我开始这个项目时,网上的一些搜索提到了这种方法,我尝试了一下,但我要求保存 2 个组件,它们只是试图预测 3D 空间中的点,所以我继续尝试另一种方法。显然不知道我在要求什么,因为我没有太多使用 PCA。 按照您的指示将输出设置为 1 个组件,效果非常好!
这个方法步骤少很多!