1樓:a羅網天下
>x=[0 1 2 3 4 5 6 7 8 8.85],y=[13 12.1 11 10.
5 10.1 9.9 9.
6 9.3 9.0 8.
9] //matlab中輸入x及y的數值
>xx=0:0.01:10; //對x軸進行劃分成若干等份,設定好引數
>yy=spline(x,y,xx);//三次方樣條資料插值
>plot(x,y,'o',xx,yy) //輸出結果
程式執行如下:
樣條線可以採用單段和多段的方式建立。對於單段樣條線來說。階次=點數-1,因此單段樣條線最多只能使用25個點。
單段構造方式受到一定的限制,定義點的數量越多,樣條線的階次越高,而階次越高樣條線會出現意外結果,如變形等。而且單段樣條線不能封閉,因此不建議使用單段構造樣條線。
在插值問題中,樣條插值通常比多項式插值好用。用低階的樣條插值能產生和高階的多項式插值類似的效果,並且可以避免被稱為龍格現象的數值不穩定的出現。並且低階的樣條插值還具有「保凸」的重要性質。
在電腦科學的計算機輔助設計和計算機圖形學中,樣條通常是指分段定義的多項式引數曲線。由於樣條構造簡單,使用方便,擬合準確,並能近似曲線擬合和互動式曲線設計中複雜的形狀,樣條是這些領域中曲線的常用表示方法。
2樓:匿名使用者
a=[0 1 2 3 4 5 6 7 8 8.85];
b=[13 12.1 11 10.5 10.1 9.9 9.6 9.3 9.0 8.9] %縱座標
%第一種,直接將離散點連成直線
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,:),'b');
3樓:
x=[0 1 2 3 4 5 6 7 8 8.85];y=[13 12.1 11 10.5 10.1 9.9 9.6 9.3 9.0 8.9];
xx=0:0.01:10;
yy=spline(x,y,xx);
plot(x,y,'o',xx,yy)
4樓:匿名使用者
x=[0 1 2 3 4 5 6 7 8 8.85];y=[13 12.1 11 10.5 10.1 9.9 9.6 9.3 9.0 8.9];
plot(x,y)
5樓:匿名使用者
spline(y,x)
matlab如何將離散點擬合成曲面
6樓:匿名使用者
clear
clc%產生資料
x=-20:2:20;
y=-20:2:20;
[x,y]=meshgrid(x,y);
z=3*x.^3-4*x+2*y.^4+3*y^3;
mesh(x,y,z)
2、待擬合的曲面形狀為,
4、單擊curve fitting之後,開啟頁面結果如下。
5、單擊x data選框,選擇待擬合的資料x。
6、單擊y data選框,選擇待擬合的資料y。
7、單擊z data選框,選擇待擬合的資料z。
8、完成效果圖。
7樓:
% 方法1
t = [1:100];d = [1:100]; k = rand(1,100);
% 插值
[x,y,z]=griddata(t,d,k,linspace(min(t),max(t))',linspace(min(d),max(d)),'v4');
figure,surf(x,y,z);
%方法2
x = [1:100];y = [1:100]; z = rand(1,100);
xlin = linspace(min(x),max(x),33);
ylin = linspace(min(y),max(y),33);
[x,y] = meshgrid(xlin,ylin);
z = griddata(x,y,z,x,y,'v4');
mesh(x,y,z) %interpolated
axis tight; hold on
plot3(x,y,z,'.','markersize',15) %nonuniform
matlab中如何有一系列離散點擬合出曲線 100
8樓:
先要知道曲線的表示式型別,然後用線性化以後的最小二乘法擬合
9樓:匿名使用者
建議 先對資料極座標變換 然後直接利用高次多項式擬合…………
matlab中怎樣把連續曲線(連續函式)離散化成點
10樓:小豬
抽樣~ 反正 在matlab裡面 所有的函式值都是離散的,你只要 抽取一定的樣點就是了
比方說:
x=-4:0.01:4;
y=x;
這個是一條直線,顯然這裡就是 以0.01為 變數x 的取值,那麼得到的y 也是離散點
11樓:匿名使用者
直接取幾個點,求這個點的函式值,就可以了。
如何將ecel中資料匯入到matlab中
泡影果果 工具 matlab軟體 步驟 雙擊桌面的matlab軟體快捷方式,開啟該軟體後,在頂部的選單欄找到 import data 並單擊。如下圖紅框所示。接下來進入 import data 對話方塊,如下圖所示,找到要匯入的excel檔案,然後單擊右下角的開啟。接下來就進入了匯入資料設定介面了,...
如何將示波器採集到的離散訊號匯入Matlab來進行頻譜分析
1.首先看你示波器是否具有頻譜分析選單,具有的頻譜分析功能是否滿足你要求,如果有,用之。2.如果沒有或不滿足,可以把採集的數值,儲存,拷貝到計算機上。當然你也可以通過計算機控制示波器把資料直接儲存到計算機上。3.用matlab的各種頻譜分析函式進行分析。急求,怎樣用matlab實現對示波器採集訊號波...
如何將cad中的曲線變得圓滑,ps中如何將稜角變得圓滑?
樓主這個圖是不是用位 件 如jpg之類 轉換為向量圖,如果是,只有在用轉換軟體的時候設定一些引數修改這些波紋。cad怎樣把不圓滑的曲線變圓滑 漢 驃騎大將軍 這個是cad自身顯示的問題,大多都這樣,預設的平滑度太低。op回車 顯示 圓弧和園的平滑度 輸入20000 確定 re回車重新生成一下ok。 ...