24小时热门版块排行榜    

查看: 3100  |  回复: 10

17_李赏

新虫 (初入文坛)

[求助] matlab曲线拟合及修正 已有2人参与

本人新手,还未对matlab进行深入学习,紧急求助~
已知:x=[8.9 11.7 13.2 13.4 14 14.2 14 10.7 21.671 23.487 20.902 16.507];
    y=[17.698 17.698 27.365 27.365 37.031 37.031 27.365 17.698 66.03 75.696 56.364 37.031]。
请问该如何用matlab拟合出多项式方程y=f(x),然后如何对方程进行修正?
回复此楼

» 收录本帖的淘帖专辑推荐

程序

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

cooooldog

铁杆木虫 (著名写手)

ส็็็

【答案】应助回帖


感谢参与,应助指数 +1
17_李赏: 金币+1, 有帮助 2014-06-29 14:03:46
Matlab不是很熟,我用gnuplot+CTeX拟合了一下,凑合着看看吧:

代码:
CODE:
\documentclass[border=10pt]{standalone}
\usepackage{siunitx}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\usepackage{pgfplotstable}
\usepackage{filecontents}
\begin{filecontents*}{myData.dat}
X     Y
8.900        17.698
11.700        17.698
13.200        27.365
13.400        27.365
14.000        37.031
14.200        37.031
14.000        27.365
10.700        17.698
21.671        66.030
23.487        75.696
20.902        56.364
16.507        37.031
\end{filecontents*}
\begin{document}
\begin{tikzpicture}
\pgfplotsset{
width=10cm,
legend style={font=\scriptsize}
}
\begin{axis}[%
xlabel=$x$,
ylabel=$y$,
ymin=0,
xmin=0,
scaled y ticks=base 10:0,
legend cell align = left,
legend pos = north west
]
\addplot[only marks] table {mydata.dat};
\addlegendentry{scatter plot};
\addplot+[no markers,red] table [y={create col/linear regression={y=Y}}]{myData.dat};
\addlegendentry{%
Linear regression:  $y=\pgfmathprintnumber{\pgfplotstableregressiona} x
\pgfmathprintnumber[print sign]{\pgfplotstableregressionb}$};
% polynomial fit
\addplot [no markers, blue] gnuplot [raw gnuplot] { % allows arbitrary gnuplot commands
f(x) = a*x**2+b*x+c;     % Define the function to fit
a=10;b=10; c=10;         % Set reasonable starting values here
fit f(x) 'myData.dat' u 1:2 via a,b,c; % Select the file, starts at col 1 and two variables
plot [x=0:28] f(x);    % Specify the range to plot
set print "parameters.dat";  % Open a file to save the parameters
print a, b, c;                  % Write the parameters to file
};
\addlegendentry{\pgfplotstableread{parameters.dat}\parameters % Open the file Gnuplot wrote
\pgfplotstablegetelem{0}{0}\of\parameters \pgfmathsetmacro\paramA{\pgfplotsretval} % Get first element, save into \paramA
\pgfplotstablegetelem{0}{1}\of\parameters \pgfmathsetmacro\paramB{\pgfplotsretval}
\pgfplotstablegetelem{0}{2}\of\parameters \pgfmathsetmacro\paramC{\pgfplotsretval}
polynomial:$y=\pgfmathprintnumber{\paramA} x^2 \pgfmathprintnumber[print sign]{\paramB} x \pgfmathprintnumber[print sign]{\paramC}$
}
\end{axis}
\end{tikzpicture}
\end{document}

matlab曲线拟合及修正
2014-06-27_21-50-07.png

ส็็็็็็็็็็็็็็็็็็็็
5楼2014-06-27 21:50:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

阿兵将心

木虫 (正式写手)

清虫

matlab里面有选项来拟合的,高斯拟合,多项式拟合什么的都有,你百度就可以看到的。

[ 发自小木虫客户端 ]
学术离我遥远吗
2楼2014-06-27 15:56:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)

【答案】应助回帖

如果x不能调整,那就是一个较为复杂的非线性拟合,其拟合次数一般较高,你可以从4次开始不断试一下
好好学习,天天向上!
8楼2014-06-28 11:31:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

17_李赏

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by 阿兵将心 at 2014-06-27 15:56:00
matlab里面有选项来拟合的,高斯拟合,多项式拟合什么的都有,你百度就可以看到的。

您好!谢谢您关注我的帖子,拟合函数求出来以后,应该怎么进行修正,您知道吗?
3楼2014-06-27 17:13:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

阿兵将心

木虫 (正式写手)

清虫

引用回帖:
3楼: Originally posted by 17_李赏 at 2014-06-27 17:13:33
您好!谢谢您关注我的帖子,拟合函数求出来以后,应该怎么进行修正,您知道吗?...

我还没有仔细看过这方面的东西,有文献资料吗?为何要修正呢,拟合不就是修正吗

[ 发自小木虫客户端 ]
学术离我遥远吗
4楼2014-06-27 20:36:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)

【答案】应助回帖

感谢参与,应助指数 +1
可以使用polyfit来进行拟合。但是你给的数据比较杂乱,例如x有升有降,不知道是否可以调整顺序。如果能够调整的话可以这样
好好学习,天天向上!
6楼2014-06-28 11:28:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhangzhiguang

至尊木虫 (文坛精英)

【答案】应助回帖

★ ★ ★ ★
17_李赏: 金币+4, ★★★★★最佳答案 2014-06-29 14:03:29
>> x=[8.9 11.7 13.2 13.4 14 14.2 14 10.7 21.671 23.487 20.902 16.507];
>>  y=[17.698 17.698 27.365 27.365 37.031 37.031 27.365 17.698 66.03 75.696 56.364 37.031];
>> p=polyfit(x,y,2)
>> y1=polyval(p,x);
>>  plot(x,y,'o',x,y1).其中 p=polyfit(x,y,2)中的2是拟合项的次数,可以修改,最高可到10次
好好学习,天天向上!
7楼2014-06-28 11:29:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

17_李赏

新虫 (初入文坛)

引用回帖:
4楼: Originally posted by 阿兵将心 at 2014-06-27 20:36:36
我还没有仔细看过这方面的东西,有文献资料吗?为何要修正呢,拟合不就是修正吗
...

可能我的想法太过理想化了,我在想,拟合曲线生成以后,再编一段调试程序,调换各阶系数,使更多的点落在曲线上或者更接近于曲线。我再找找相关资料吧,如果发现了,再来找您交流哈!
9楼2014-06-29 14:09:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

17_李赏

新虫 (初入文坛)

引用回帖:
8楼: Originally posted by zhangzhiguang at 2014-06-28 11:31:55
如果x不能调整,那就是一个较为复杂的非线性拟合,其拟合次数一般较高,你可以从4次开始不断试一下

这个例子中的x不能单独调整,x和y值是对应的,x调整为从小到大的顺序,则y值也跟着相应的x值调整到相应位置,即点的位置固定,验证得到的拟合曲线是同一条。谢谢您提供的思路!
10楼2014-06-29 15:52:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 17_李赏 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 308求调剂 +3 是Lupa啊 2026-03-16 3/150 2026-03-16 10:07 by 求调剂zz
[考研] 311求调剂 +6 冬十三 2026-03-15 6/300 2026-03-16 08:00 by wang_dand
[考研] 327求调剂 +6 拾光任染 2026-03-15 11/550 2026-03-15 22:47 by 拾光任染
[考博] 欢迎申博同学联系 +3 天道酬勤2026686 2026-03-10 7/350 2026-03-15 19:03 by 天道酬勤2026686
[考研] 268求调剂 +5 一定有学上- 2026-03-14 6/300 2026-03-14 22:20 by 运气yunqi
[考研] 材料与化工(0856)304求B区调剂 +7 邱gl 2026-03-10 11/550 2026-03-14 12:18 by 邱gl
[考研] 材料080500调剂求收留 +3 一颗meteor 2026-03-13 3/150 2026-03-14 10:54 by peike
[考研] 材料工程专硕,一志愿中国矿业大学,总分314,求调剂 +5 无懈可击的巨人 2026-03-10 5/250 2026-03-14 00:37 by JourneyLucky
[考研] 招收0805(材料)调剂 +3 18595523086 2026-03-13 3/150 2026-03-14 00:33 by 123%、
[考研] 304求调剂 +6 Mochaaaa 2026-03-12 7/350 2026-03-13 22:18 by 星空星月
[考研] 材料与化工求调剂一志愿 985 总分 295 +8 dream…… 2026-03-12 8/400 2026-03-13 22:17 by 星空星月
[考研] 308求调剂 +5 是Lupa啊 2026-03-11 5/250 2026-03-13 22:13 by JourneyLucky
[考研] 26调剂/材料/英一数二/总分289/已过A区线 +6 步川酷紫123 2026-03-13 6/300 2026-03-13 21:59 by 星空星月
[考研] 26调剂/材料科学与工程/总分295/求收留 +9 2026调剂侠 2026-03-12 9/450 2026-03-13 20:46 by 18595523086
[考研] 求b区学校调剂 +3 周56 2026-03-11 3/150 2026-03-13 16:20 by JourneyLucky
[考研] 274求调剂 +3 S.H1 2026-03-12 3/150 2026-03-13 15:15 by JourneyLucky
[考研] 工科调剂 +4 Jiang191123! 2026-03-11 4/200 2026-03-13 15:15 by Miko19
[考研] 268求调剂 +4 好运连绵不绝 2026-03-12 4/200 2026-03-13 10:45 by hyswxzs
[考研] 求调剂 资源与环境 285 +3 未名考生 2026-03-10 3/150 2026-03-13 10:31 by houyaoxu
[基金申请] 提交后的基金本子,已让学校撤回了,可否换口子提交 +3 dut_pfx 2026-03-10 3/150 2026-03-11 08:38 by kudofaye
信息提示
请填处理意见