Matlab——圖形繪制——二維平面圖形


二維平面圖形

hold on ————在已畫好的圖形上添加新的圖形

 

plot 繪制一維曲線的基本函數,但在使用此函數之前,我們需先定義曲線上
每一點的x 及y 座標。下例可畫出一條正弦曲線:

>> x=0:0.001:10; % 0 到10 的1000 個點的x 座標
y=sin(x); % 對應的y 座標
plot(x,y); % 繪圖

改變顏色

 

>> plot(x,y,'k')

 

 

 

改變顏色的同時改變圖線形態

 

>> plot(x,y,'k*')

 

 

 同時畫兩個函數【淡粉色】

>> Y=sin(10*x);
plot(x,y,'r:',x,Y,'b') % 同時畫兩個函數

 

 調整圖軸范圍

>> axis([0,6,-1,1])   %前兩個是橫坐標,后兩個是縱坐標

圖形上加上注解

>> xlabel('x 軸'); % x 軸注解
ylabel('y 軸'); % y 軸注解
title('余弦函數'); % 圖形標題
legend('y = cos(x)'); % 圖形注解
gtext('y = cos(x)'); % 圖形注解 ,用鼠標定位注解位置
grid on; % 顯示格線

 

 

實例:將一函數 f(x)=sin(x)/x 在-20<x<20,-0.4<y<1.2 之間畫出:

>> fplot('sin(x)./x',[-20 20 -0.4 1.2])

實例:

a = [0:pi/50:2*pi]'; %角度 0 − 2p
X = cos(a)*3; %參數方程
Y = sin(a)*2;
plot(X,Y);
xlabel('x'), ylabel('y');
title('橢圓')

 

圖形窗口的分割一般用命令subplot:

>> subplot(2,2,1);
>> subplot(2,3,4);

 

當資料點數量不多時——長條圖

close all; %關閉所有的圖形視窗
x=1:10;
y=rand(size(x));
bar(x,y);

如果已知資料的誤差量,就可用errorbar 來表示。下例以單位標准差來做資料
的誤差量:

x = linspace(0,2*pi,30);
y = sin(x);
e = std(y)*ones(size(x));
errorbar(x,y,e)

對於變化劇烈的函數,可用fplot 來進行較精確的繪圖,會對劇烈變化處進行較
密集的取樣,如下例:

>> fplot('sin(1/x)', [0.02 0.2]); % [0.02 0.2]是繪圖范圍

 

若要產生極座標圖形,可用polar:

theta=linspace(0, 2*pi);
r=cos(4*theta);
polar(theta, r);

 

對於大量的資料,我們可用hist 來顯示資料的分 情況和統計特性。下面幾個
命令可用來驗證randn 產生的高斯亂數分 :

>> x=randn(5000, 1); %產生5000個μ=0,s=1的高斯亂數
>> hist(x,20) %20代表長條的個數

rose 和hist 很接近,只不過是將資料大小視為角度,資料個數視為距離,並用
極座標繪制表示:

x=randn(1000, 1);
rose(x);

stairs 可畫出階梯圖

x=linspace(0,10,50);
y=sin(x).*exp(-x/3);
stairs(x,y);

stems 可產生針狀圖,常被用來繪制數位訊號

x=linspace(0,10,50);
y=sin(x).*exp(-x/3);
stem(x,y);


stairs 將資料點視為多邊行頂點,並將此多邊行塗上顏色

>> x=linspace(0,10,50);
y=sin(x).*exp(-x/3);
fill(x,y,'b'); % 'b'為藍色

feather 將每一個資料點視復數,並以箭號畫出:

theta=linspace(0, 2*pi, 20);
z = cos(theta)+i*sin(theta);
feather(z);

compass 和feather 很接近,只是每個箭號的起點都在圓點

theta=linspace(0, 2*pi, 20);
z = cos(theta)+i*sin(theta);
compass(z);

 


免責聲明!

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



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