获得3d形状的等式

时间:2014-05-09 01:31:52

标签: curve-fitting parametric-equations excel-charts

我有2个数组说X和Y.每个都有5个元素。现在对于(X,Y)的每个可能组合,我有一个Z值,所以Z是一个5x5矩阵。

我希望找到一个公式,例如Z = F(X,Y)。关于如何做到这一点的任何想法。

我尝试了MS Excel曲面图,但它没有在曲面图上给出任何等式或曲线拟合。

2 个答案:

答案 0 :(得分:9)

总的来说,我建议使用SciLab或Matlab等其他软件来完成这项任务。这些产品比Excel更加计算数学。 但Excel有一些内置功能可能会对你有帮助。

首先说明: 您需要使用名为“Solver”的加载项。此加载项随Excel一起提供,但可能未在安装时默认安装。 一个描述(在www中有数千个)如何安装该加载项,您将在此处找到: Solver Add-in

如果您已完成此操作,则下一步是创建包含数据的工作表。 我试图生成如下图所示的示例。

范围C5:G9包含您想要通过函数逼近的矩阵。 所以它是z = f(x,y)矩阵。

旁边的图表只是您(在本例中为我的)原始数据的3D图。

现在它会变得有点数学...... 您需要一种通用类型的函数来进行近似。 结果的质量取决于此功能能够接近您的数据的程度。 在示例中,我使用了具有二阶近似(最大二次项)的方法。 我的示例函数是z=a*x^2 + b*y^2 + c *x*y + d*x + e*y +f。 如果您需要更多,请尝试使用三阶项(包括x ^ 3,y ^ 3,...)。 我不想在示例中执行此操作,因为我不想在Excel中键入长公式。

下一步是键入长公式:

现在我们必须使用计算公式的值填充范围C15:G19。但在此之前,我们必须在范围J14:J19中定义多项式系数。作为起始值,您可以仅对所有系数使用1(图片显示运行求解器后的解决方案)

单元格C15中的公式为=$J$14*C$14^2+$J$15*$B15^2+$J$16*C$14*$B15+$J$17*C$14+$J$18*$B15+$J$19 将其复制到Matrix的其他单元格应该很容易。

此旁边的图表显示了我们的近似函数的结果。

现在我们必须准备解算器。解算器需要以某种方式进行优化。 因此,我们需要定义一个表示近似质量的函数。 我使用了最小平方值...在www上查看解释。 在C24:G28范围内,我计算了从近似函数到原始数据的差异的平方。单元格C24具有公式=(C15-C5)^2

现在我们即将完成。只需将此公式复制到范围的其余部分,然后添加一个非常重要的单元格:

将范围C24:G28的总和放在单元格H29中 该值是误差的总和,或更好地表示我们的近似函数与原始数据点的差异。

enter image description here

现在最重要的!!! 选择Cell H29并启动求解器加载项:

此窗口将弹出(抱歉,我的电脑上安装了德语Excel)

enter image description here

只需填写目标单元格$H$29的值,目标值= 0和变量单元格(重要)$J$14;$J$19

按“解决”和.... tada多项式系数已更改,以使您的数据符合函数。

这是你一直在寻找的吗?

请注意 阿克塞尔

答案 1 :(得分:-2)

您可以谷歌搜索并试用ThreeDify Excel Grapher v4.5,这是一个包含带有自动方程式查找器的3D方程拟合器的excel插件。