1樓:墨汁諾
%第一種,畫平滑曲線的方法
c = polyfit(a, b, 2); %進行擬合,c為2次擬合後的係數
d = polyval(c, a, 1); %擬合後,每一個橫座標對應的值即為d
plot(a, d, 'r'); %擬合後的曲線
plot(a, b, '*'); %將每個點 用*畫出來
hold on;
%第二種,畫平滑曲線的方法
values = spcrv([[a(1) a a(end)];[b(1) b b(end)]],3);
plot(values(1,:),values(2,:), 'g');
擬合簡介
在matlab中可以用polyfit 來擬合多項式。擬合以及插值還有逼近是數值分析的三大基礎工具,通俗意義上它們的區別在於:擬合是已知點列,從整體上靠近它們;插值是已知點列並且完全經過點列;逼近是已知曲線,或者點列,通過逼近使得構造的函式無限靠近它們。
2樓:皮蛋吃稀飯
準備工具:
matlab
具體步驟:
1、首先準備兩列資料,作為xy座標值,使用plot命令作圖如下。
2、然後進行資料擬合,這裡使用matlab的polyfit命令。如果資料的規律性很差的話,polyfit後面設定的引數要足夠大才能保證擬合精度,在這個資料中選擇15。
3、擬合後與原來資料對比後的std約為0.1287.y的平均值為113.精度值根據不同的需要設計不同的擬合值。
4、matlab下的命令為polyder。求導後得到的資料作圖如下。可以看到在比區間上,導數有兩處為0,這與原來曲線相符。
5、最後就完成了。
matlab優勢特點:
1) 高效的數值計算及符號計算功能,能使使用者從繁雜的數**算分析中解脫出來;
2) 具有完備的圖形處理功能,實現計算結果和程式設計的視覺化;
3) 友好的使用者介面及接近數學表示式的自然化語言,使學者易於學習和掌握;
4) 功能豐富的應用工具箱(如訊號處理工具箱、通訊工具箱等) ,為使用者提供了大量方便實用的處理工具。
3樓:匿名使用者
有兩種方法可以畫平滑曲線,第一種是擬合的方法,第二種是用spcrv。
其實原理應該都一樣就是插值。下面是源程式,大家可以根據需要自行選擇,更改擬合的引數。
clc,clear;
a = 1:1:6; %橫座標
b = [8.0 9.0 10.0 15.0 35.0 40.0]; %縱座標
plot(a, b, 'b'); %自然狀態的畫圖效果
hold on;
%第一種,畫平滑曲線的方法
c = polyfit(a, b, 2); %進行擬合,c為2次擬合後的係數
d = polyval(c, a, 1); %擬合後,每一個橫座標對應的值即為d
plot(a, d, 'r'); %擬合後的曲線
plot(a, b, '*'); %將每個點 用*畫出來
hold on;
%第二種,畫平滑曲線的方法
values = spcrv([[a(1) a a(end)];[b(1) b b(end)]],3);
plot(values(1,:),values(2,:), 'g');
如何根據matlab擬合的曲線讀出影象中點的座標值
樓主的意思是 已知 上的一條曲線,如何獲取該曲線上點的座標 x,y 下面有段程式,是本人讀曲線座標所寫,看看對樓主是否有幫助 clcclear all im1 imread runx2.jpg 樓主在此替換成自己的 im rgb2gray im1 im im end 1 1,imshow im m,...
matlab怎麼使用,matlab中怎麼使用匯入的資料?
matlab基本的使用方法 1.讀取影象 用imread函式讀取影象檔案,檔案格式可以是tiff jpeg gif bmp png等。比如 讀進來的影象資料被儲存在變數f中。尾部的分號用來抑制輸出。如果 是彩色的,可以用rgb2gray轉換成灰度圖 f rgb2gray f 然後可以用size函式看...
怎麼在origin裡把曲線平滑,如何在excel或origin裡進行曲線的平滑?
老央 我感謝名號萬般的諸神,懷念遠方 和顫抖著山羊鬍子的當地沉思者,正用拖把 一個鈴響了,一扇門在顫抖,如果你認為瘋狂而漫長 流一似水的青中中,哈哈 origin8.0如何對xrd曲線平滑處理 一 安裝,開啟origin,新建工作表 worksheet 一般剛開啟會自動新建版一個工作表。二 把資料拷...