其实这是个二元隐式函数,要拟合就要将 y 解出来,但是那样会出问题,所以最好的办法就是将 data 的每个点换成三元的 就是后面添一个 z 的值 0,这样拟合免去了解 y 的麻烦.另外你的 FindFit 用法不对,详情看下面的吧.输入data = {{565.454, 528.012}, {562.058, 525.544}, {561.39, 521.447}, {563.782, 518.108}, {567.941, 517.407}, {571.255, 519.857}, {571.938, 523.953}, {569.5, 527.356}};sol = FindFit[PadRight[data1, {Length@data1, 3}, 0], ((x - m)/a)^2 + ((y - n)/b)^2 - 1, {a, b, {m, 565}, {n, 522}}, {x, y}]输出 {a -> 5.40952, b -> 5.44587, m -> 566.665, n -> 522.709} 可以做出图像来比较拟合的效果Show[ListPlot[data, PlotStyle -> Directive[Red, PointSize[Large]]],ContourPlot[Evaluate[((x - m)/a)^2 + ((y - n)/b)^2 - 1 == 0 /. sol], {x, 560, 575}, {y, 515, 530}]]
mathematica一组数据非拟合成椭圆方程
1个回答
相关问题
-
怎么用mathematica 解一元线性方程组.还有怎么对数据进行线性拟合
-
mathematica怎么拟合多项式方程
-
mathematica线性拟合,求作图
-
急用,用SPSS用非线性拟合这组数据
-
(2009•广东模拟)如果将一组数据中的每一个数据都加上同一个非零常数,那么这组数据的( )
-
mathematica 将y轴数据取对数
-
已知A组数据2,3,0,x,y的平均数为0;B组数据1,2,-y,2x,O的平均数为1,现将A、B两组数据合成一组数据C
-
mathematica绘制一维波动方程曲线,
-
我是学化工的.实验数据出来了,但要拟合成想要的方程出现了麻烦!安托因方程:y=exp(A-B/(C+x))
-
Mathematica中怎么将椭圆的函数带入画椭圆的式子中