matlab離散數據繪圖


1、用set命令添加標簽的學生測試成績圖像

五位同學 Adrian、Jim、Joe、Sally、Sue在考試中的分數分別為50、98、75、80、98。將其繪制出來:

若開始使用如下代碼:

x = [1:5];   

y = [50,98,75,80,98];

plot(x,y,'o',x,y),set(gca,'XTicklabel',['Adrian'; 'Jim'; 'Joe'; 'Sally'; 'Sue']),set(gca,'XTick',[1:5]),axis([1 5 0 100]),...
xlabel('學生'),ylabel('期末成績'),title('2005年12月期末考試');

則會提示  串聯的矩陣的維度不一致 

 將上述代碼更換為

x = [1:5];   

y = [50,98,75,80,98];

plot(x,y,'o',x,y),set(gca,'XTicklabel',['001'; '002'; '003'; '004'; '005']),set(gca,'XTick',[1:5]),axis([1 5 0 100]),...
xlabel('學生'),ylabel('期末成績'),title('2005年12月期末考試');

顯示圖像為:

 

 

2、使用二維條形圖繪制圖像,通過調用bar(x,y)函數:

x = [1:5];   

y = [50,98,75,80,98];

bar(x,y),xlabel('學生'),ylabel('分數'),title('期末測試');

結果顯示如下:

 

3、用針狀圖繪制離散數據

例如繪制出函數 f(t) = e(-βt)sin(t/4) ,β =0.01,並假設它時某根彈簧的響應系數,設 t 在200秒內連續響應 :

t = [0:0.1:200];

f = exp(-0.01*t).*sin(t/4);

plot(t,f),xlabel('時間(秒)'),ylabel('彈簧響應');

繪制出圖為:

 

 若要從離散數據產生該圖像,假設每隔5秒采樣一次,則將時間t = [0:5:200]再作圖即可,相應的圖像會比較粗糙。

對於上述的離散的數據可以用針頭圖 stem(x,y) 表示:

t = [0:5:200];

f = exp(-0.01*t).*sin(t/4);

stem(t,f),xlabel('時間(秒)'),ylabel('彈簧響應');  %plot(x,y)使用的線條類型選項也能夠用到stem(x,y)上;還可以向stem(x,y)傳遞 'fill' 參數選項讓matlab填充標記。

                       %還可以自由的選擇標記的樣式,包括方塊(s)、菱形(d)、五角星(p)、圓圈(o)、叉號(x)、星號(*)和點號(.)。

                       %例如使用菱形填充標記,綠色線條顯示可使用下列代碼:

                       %stem(t,f,'--dg','fill'),xlabel('時間(秒)'),ylabel('彈簧響應');

圖形顯示如下:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM