請問Matlab中如何將離散點連成曲線,謝謝了

時間 2021-10-15 00:00:54

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。 ...