matlab用ezplot 和fplot 畫同函式為什麼圖形不一樣啊

2021-05-29 21:52:35 字數 5104 閱讀 6173

1樓:k打醬油

樓上說了這麼多,好像都沒回答樓主的問題......

這兩個圖本來應該一樣,但是具體畫圖的時候,由於我們給出的條件非常簡略,所以函式必須要先自己取xdata,然後再算相應的ydata,不同的函式劃分的格點不同,結果就可能有差異了。

對ezplot生成的x,y數值進行記錄,發現y(210)和y(224)都是nan。這應該是ezplot函式的一點小缺陷,具體我沒仔細看,你可以自己看一下函式。

附件是ezplot生成的x和y資料

2樓:匿名使用者

函式plot 是繪製二維圖形的最基本函式,它是針對向量或矩陣的列來繪製曲線的。也就是說,使用plot 函式之前,必須首先定義好曲線上每一點的x 及y 座標,常用格式為:

(1)plot(x) 當x 為一向量時,以x 元素的值為縱座標,x 的序號為橫座標值繪製曲線。當x 為一實矩陣時,則以其序號為橫座標,按列繪製每列元素值相對於其序號的曲線,當x 為m× n 矩陣時,就有n 條曲線。

(2)plot(x,y) 以x 元素為橫座標值,y 元素為縱座標值繪製曲線。

(3)plot(x,y1,x,y2,…) 以公共的x 元素為橫座標值,以y1,y2,… 元素為縱座標值繪製多條曲線。

函式fplot 用來繪製數學函式,其呼叫格式為: fplot(fun,lims)其中fun 就是所要繪製的函式,可以是定義函式的m 檔名,也可以是以x 為變數的可計算字串,lims=[xmin xmax ymin ymax]限定了x,y 軸上的繪圖空間。

函式ezplot它無需資料準備,直接畫出函式圖形,基本呼叫格式為ezplot(f),其中f 是字串或代表數學函式的符號表示式,只有一個符號變數

區別:plot是繪製二維圖形,並且是x,y的表示式是已知的或者是形如y=f(x)這樣確切的表示式

而ezplot是畫出隱函式圖形,是形如f(x,y)=0這種不能寫出像y=f(x)這種函式的圖形

大家好!matlab中ezplot和plot, fplot這3個繪圖命令的區別是什麼?謝謝!

3樓:

plot是繪製二維圖形,

抄並且襲是x,y的表示式

是已知的或者是形如

y=f(x)這樣確切的表示式,而ezplot是畫出隱函式圖形,是形如f(x,y)=0這種不能寫出像y=f(x)這種函式的圖形fplot(y,[a,b])精確繪圖

4樓:不癢不痛

ezplot一元函式繪圖函式ezplot(fun) ezplot(fun,[min,max]) 。

抄plot函式的基本呼叫格式為:plot(x,y) 其中x和y為長度相同的向量,分別用於儲存x座標和y座標資料。

fplot(y,[a,b])精確繪圖。

5樓:匿名使用者

ezplot一元函bai

數繪圖函式ezplot(fun) ezplot(fun,[min,max])

plot函式的基本呼叫du格式zhi為:plot(x,y) 其中x和y為長度相dao同的向量,分別回

用於儲存x座標和y座標資料。答

matlab中ezplot和plot, fplot這3個繪圖命令的區別是什麼?

6樓:

plot是繪製二維圖形,並且是x,y的表示式是已知的或者是形如y=f(x)這樣確切的表示式,而ezplot是畫出隱函式圖形,是形如f(x,y)=0這種不能寫出像y=f(x)這種函式的圖形fplot(y,[a,b])精確繪圖

7樓:不癢不痛

ezplot一元函式繪圖函式ezplot(fun) ezplot(fun,[min,max]) 。

plot函式的基本呼叫格式為:plot(x,y) 其中x和y為長度相同的向量,分別用於儲存x座標和y座標資料。

fplot(y,[a,b])精確繪圖。

matlab命令fplot和ezplot什麼區別啊

8樓:匿名使用者

符號函式簡易繪圖函式ezplot(f)

f可以包含單個符號變數x的字串或表示式,預設畫圖區間(-2pi,2pi),如果f包含x和y,畫出的影象是f(x,y)=0的影象,預設區間是-2pi

ezplot(f,xmin,xmax)或ezplot(f,[xmin,xmax])繪製在xmin

syms x t

ezplot('t*cos(t)','t*sin(t)',[0,4*pi])

繪製符號影象函式fplot(fun,lims,tol,』linespec』,n)

其中lims=[xmin,xmax]或[xmin,xmax,ymin,ymax] tol為指定相對誤差,預設0.001 『linespec』指定繪圖的線型 n指定最少以n+1個點繪圖

[x,y]=fplot(fun,lims,…) 只返回用來繪圖的點,並不繪圖,可以自己呼叫plot(x,y)來繪製圖形。

syms x

subplot(2,2,1),fplot('humps',[0,1])

f='abs(exp(x*(0:9))*ones(10,1))'

subplot(2,2,2),fplot(f,[0,2*pi])

subplot(2,2,3),fplot('sin(1./x)',[0.01,0.1],1e-3)

matlab中 fplot plot這倆有什麼區別

9樓:顛倒的世界

符號函式簡易繪圖函式ezplot(f),繪製符號影象函式fplot(fun,lims,tol,』linespec』,n),操作方法如下:

1、首先在matlab中生成兩列數,暫時取名為aa。

2、在matlab命令列輸入:plot(1:100,aa(:,1));這是最常用的plot命令,可以得到如下影象。

3、在plot括號中還有許多可以新增的內容:plot(1:100,aa(:,1),'r.');得到的是紅色的點狀圖。

4、圖形完成後,還可以做修飾,xy座標的內容:xlabel('name');ylabel('reference')。

5、最後加入圖名:title('reference of the names'),就完成了。

10樓:匿名使用者

簡單來說,兩者都是圖形繪製函式,所不同的是,plot針對任意變數x和y都可以繪製,而fplot則需要實現定義函式,用function命令定義函式,然後再fplot命令中引用函式的名字。

11樓:匿名使用者

符號函式簡易繪圖函式ezplot(f)

f可以包含單個符號變數x的字串或表示式,預設畫圖區間(-2pi,2pi),如果f包含x和y,畫出的影象是f(x,y)=0的影象,預設區間是-2pi

ezplot(f,xmin,xmax)或ezplot(f,[xmin,xmax])繪製在xmin

syms x t

ezplot('t*cos(t)','t*sin(t)',[0,4*pi])

繪製符號影象函式fplot(fun,lims,tol,』linespec』,n)

其中lims=[xmin,xmax]或[xmin,xmax,ymin,ymax] tol為指定相對誤差,預設0.001 『linespec』指定繪圖的線型 n指定最少以n+1個點繪圖

[x,y]=fplot(fun,lims,…) 只返回用來繪圖的點,並不繪圖,可以自己呼叫plot(x,y)來繪製圖形。

syms x

subplot(2,2,1),fplot('humps',[0,1])

f='abs(exp(x*(0:9))*ones(10,1))'

subplot(2,2,2),fplot(f,[0,2*pi])

subplot(2,2,3),fplot('sin(1./x)',[0.01,0.1],1e-3)

12樓:匿名使用者

使用plot函式時,先要取得x、y座標,然後在繪製曲線,x往往採取等間隔取樣。實際應用中,函式隨著自變數的變化趨勢未知,如果間隔設定不合理,可能無法反應函式的變化趨勢。而fplot函式可以根據函式本身的性質合理的設定間隔,不需要手動設定間隔,能夠準確的反映函式變化趨勢。

matlab的ezplot函式問題 20

13樓:minquan一人

關於ezplot的問題,我進行了下面的測試:

首先,開啟ezplot的幫助,在命令視窗中輸入:doc ezplot,如下圖所示:

下面比較ezplot 與 fplot

**如下:

close all;

figure;

subplot(2,1,1);

ezplot(@(t)10.*cos(pi.*2000.*t+pi./6),[-2*pi*1e-3,2*pi*1e-3]);

subplot(2,1,2);

fplot(@(t)10.*cos(pi.*2000.*t+pi./6),[-2*pi*1e-3,2*pi*1e-3]);

figure;

subplot(2,1,1);

ezplot(@(t)10.*cos(pi.*2000.*t+pi./6),[-2*pi*1e-2,2*pi*1e-2]);

subplot(2,1,2);

fplot(@(t)10.*cos(pi.*2000.*t+pi./6),[-2*pi*1e-2,2*pi*1e-2]);

得到下面兩個圖:

可以發現,fplot畫出的圖形是我們預期的,而ezplot在區間比較大時,圖形是錯誤的,我想這正是幫助中提示使用flpot的原因。如果不限制區間,例如** ezplot(x),預設是在[-2pi,2pi]上畫圖,區間更大,所以也會出錯,即看不到週期很小的cos影象。

下面是flot的幫助截圖:

用ezplot函式在matlab中繪製圖形

14樓:涿鹿軒轅氏

貌似ezplot不支援呼叫變數,r(2),r(3)......這些東西導致了錯誤。

15樓:義朗紫新

ezplot('exp(x*y)-sin(x+y)=0',[-3,3])

求用matlab寫小程式,求用matlab寫一個小程式

內容來自使用者 夢見天亮11 num2str 變數值為字串 int2str 變整數為字串 str2num 變字串為數值 sprintf 變數值為格式控制下的字串 sscanf 變字串為格式控制下的數值 1.分段函式 for x pi 6 pi 10 6 pi y sin x if y 0 y 0 e...

Matlab裡用的是什麼語言,MATLAB是一種基於什麼程式語言的語言?

我來說一下 matlab的語言正如三樓所說,是十分寬鬆的.matlab本身是由c語言編寫的,它主要關注的計算,運用,而不是程式設計,所以用matlab寫程式是十分快意的.只要學過其它任一一種語言,就可以十分方便的學習使用matlab我給你借了個簡單的例子,自己看一下吧 你這話就像問vc用的什麼語言一...

matlab中單位矩陣用ones和eye的區別

matlab 中,單位矩陣的生成 eye n 為n n的單位矩陣。ones函式 生成全專1陣。zeros的使用方法 b zeros n 生成n n全零屬陣。b zeros m,n 生成m n全零陣。b zeros m n 生成m n全零陣。b zeros d1,d2,d3 生成d1 d2 d3 全零...