24小时热门版块排行榜    

查看: 1593  |  回复: 6

ww汪红

新虫 (小有名气)

[求助] 求大神解释~~F=@(p,x)p(1)*x(:,1).^2+p(2)*x(:,1).*x(:,2)+p(3)*x(:,2).^2+p(4); 已有1人参与

F=@(p,x)p(1)*x(:,1).^2+p(2)*x(:,1).*x(:,2)+p(3)*x(:,2).^2+p(4);
% 离散数据点
x=load('G:\Users\Daniel\Desktop\Total.txt');
p0=[1 1 1 1];
warning off
% 拟合系数,最小二乘方法
p=nlinfit(x,zeros(size(x,1),1),F,p0);
plot(x(:,1),x(:,2),'r.');
axis square;
hold on;
xmin=min(x(:,1));
xmax=max(x(:,1));
ymin=min(x(:,2));
ymax=max(x(:,2));
% 作图
ezplot(@(x,y)F(p,[x,y]),[-1+xmin,1+xmax,-1+ymin,1+ymax]);
title('曲线拟合');
legend('样本点','拟合曲线')
set(gca,'xtick',[-1:0.2:1]);
set(gca,'ytick',[-1:0.2:1]);
xlim([-1 1]);
ylim([-1 1]);
line([-1 1],[0 0]);
line([0 0],[-1 1]);

麻烦请问能不能设置拟合出来的椭圆长轴沿y方向,短轴沿x方向?
还有这个公式F=@(p,x)p(1)*x(:,1).^2+p(2)*x(:,1).*x(:,2)+p(3)*x(:,2).^2+p(4)

哪个代表长轴哪个代表短轴呀~?小白一个跪谢大神
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guo_zy_123

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
F=@(p,x)p(1)*x(:,1).^2+p(2)*x(:,2).^2+p(3)%匿名函数写成这个

%P的初值只要
p0 = [1 1 1];

其他部分不变

上次给你程序了,长短轴,根据算出来的长短轴,比较大小就行了

见你自己上一个帖子
老古董
2楼2015-12-27 09:42:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guo_zy_123

木虫 (正式写手)

【答案】应助回帖

长短轴公式我就不列了吧

这个高中生的东西,自己查一下下

x^2/(a^2)+y^2/(b^2) = 1

把求解出的p转换成上面的标准格式

ab都能求,然后比较大小就行了。。。。
老古董
3楼2015-12-27 09:44:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guo_zy_123

木虫 (正式写手)

【答案】应助回帖

这次看了你的数据,
以前没有看过

感觉你的数据比较适合分段拟合

比较明显的是几个环状数据

绿色的线是所有数据用最小二乘法拟合的,

蓝色的线是分了几个段拟合的

蓝色拟合的基础是数据根据到原点的具体把数据手动分几类,然后就能做了
求大神解释~~F=@(p,x)p(1)*x(:,1).^2+p(2)*x(:,1).*x(:,2)+p(3)*x(:,2).^2+p(4);
分段拟合.jpg

老古董
4楼2015-12-27 09:58:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guo_zy_123

木虫 (正式写手)

金币谢谢
金币谢谢
金币谢谢

重要的事情说3遍
老古董
5楼2015-12-27 10:00:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ww汪红

新虫 (小有名气)

引用回帖:
3楼: Originally posted by guo_zy_123 at 2015-12-27 09:44:23
长短轴公式我就不列了吧

这个高中生的东西,自己查一下下

x^2/(a^2)+y^2/(b^2) = 1

把求解出的p转换成上面的标准格式

ab都能求,然后比较大小就行了。。。。

p的解在哪可以看到?
麻烦举例说一下,怎么样利用p值求解 ab
谢谢~!
6楼2015-12-27 15:28:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

guo_zy_123

木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
ww汪红: 金币+30, ★★★★★最佳答案, 谢谢谢谢~!! 2015-12-27 19:41:56
引用回帖:
6楼: Originally posted by ww汪红 at 2015-12-27 15:28:29
p的解在哪可以看到?
麻烦举例说一下,怎么样利用p值求解 ab
谢谢~!...

p=nlinfit(x,zeros(size(x,1),1),F,p0);

程序里这一行是,还有你这也太不动脑了吧。。。。。。

F=@(p,x)p(1)*x(:,1).^2+p(2)*x(:,2).^2+p(3)%匿名函数写成这个

则椭圆方程就是

(x^2)*p(1)+(y^2)*p(2) = - p(3)

长短轴自己对应分析吧。。。。。。。
老古董
7楼2015-12-27 19:24:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ww汪红 的主题更新
信息提示
请填处理意见