版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 MatLab圖形繪制功能一、 二維平面圖形基本繪圖函數命 令含 義plot建立向量或矩陣各隊隊向量的圖形loglogx、y軸都取對數標度建立圖形semilogxx軸用于對數標度,y軸線性標度繪制圖形semilogyy軸用于對數標度,x軸線性標度繪制圖形title給圖形加標題xlabel給x軸加標記ylabel給y軸加標記text在圖形指定的位置上加文本字符串gtext在鼠標的位置上加文本字符串grid打開網格線plot繪圖函數的叁數 字元 顏色字元 圖線型態(tài)y 黃色. 點k 黑色o 圓w 白色x xb 藍色+ +g 綠色* *r 紅色- 實線c 亮青色: 點線m 錳紫色-. 點虛線- 虛線
2、hold on 命令用于在已畫好的圖形上添加新的圖形plot是繪制一維曲線的基本函數,但在使用此函數之前,我們需先定義曲線上每一點的x及y座標。下例可畫出一條正弦曲線: x=0:0.001:10; % 0到10的1000個點的x座標y=sin(x); % 對應的y座標plot(x,y); % 繪圖Y=sin(10*x);plot(x,y,'r:',x,Y,'b') % 同時畫兩個函數· 若要改變顏色,在座標對後面加上相關字串即可: x=0:0.01:10; plot(x,sin(x),'r') 若要同時改變顏色及圖線型態(tài)(Line st
3、yle),也是在坐標對後面加上相關字串即可:plot(x,sin(x),'r*')用axis(xmin,xmax,ymin,ymax)函數來調整圖軸的范圍axis(0,6,-1.5,1)MATLAB也可對圖形加上各種注解與處理:xlabel('x軸'); % x軸注解 ylabel('y軸'); % y軸注解 title('余弦函數'); % 圖形標題 legend('y = cos(x)'); % 圖形注解 gtext('y = cos(x)'); % 圖形注解 ,用鼠標定位注解位置grid on
4、; % 顯示格線 fplot的指令可以用來自動的畫一個已定義的函數分布圖,而無須產生繪圖所須要的一組數據做為變數。其語法為fplot('fun',xmin xmax ymin ymax),其中 fun為一已定義的函數名稱,例如 sin, cos等等;而 xmin, xmax, ymin, ymax 則是設定繪圖橫軸及縱軸的下限及上限。以下的例子是將一函數 f(x)=sin(x)/x 在-20<x<20,-0.4<y<1.2之間畫出:>> fplot('sin(x)./x',-20 20 -0.4 1.2) 【例】畫橢圓a =
5、0:pi/50:2*pi'%角度 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);plot3命令將繪制二維圖形的函數plot的特性擴展到三維空間圖形。函數格式除了包括第三維的信息(比如Z方向)之外,與二維函數plot相同。plot3一般語法調用格式是plot3(x,y,z,S),這里x,y和z是向量或矩陣,S是可選的字符串,用來指定顏
6、色、標記符號和/或線形(s可以省略)。三維螺旋線例子: t=0:pi/50:10*pi; plot3(sin(t),cos(t),t) grid %添加網格plot3可畫出空間中的曲線: t=linspace(0,20*pi, 501); plot3(t.*sin(t), t.*cos(t), t); %注意用點乘 .*亦可同時畫出兩條空間中的曲線:t=linspace(0, 10*pi, 501); plot3(t.*sin(t), t.*cos(t), t, t.*sin(t), t.*cos(t), -t); 正弦曲線圖 x=linspace(0,3*pi); % 0到 3pi 間100
7、個數據點 z1=sin(x); z2=sin(2*x); z3=sin(3*x); y1=zeros(100); % 含有100個數據的 0數組 y3=zeros(100); y2=y3/2; plot3(x,y1,z1,x,y2,z2,x,y3,z3);后面供同學們參考:MATLAB還有其他各種二維繪圖函數,以適合不同的應用,詳見下表。 小整理:其他各種二維繪圖函數 bar 長條圖errorbar 圖形加上誤差范圍 fplot 較精確的函數圖形 polar 極座標圖hist 累計圖rose 極座標累計圖stairs 階梯圖stem 針狀圖fill 實心圖feather 羽毛圖compass
8、羅盤圖quiver 向量場圖當資料點數量不多時,長條圖是很適合的表示方式: 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)
9、; % 0.02 0.2是繪圖范圍 若要產生極座標圖形,可用polar: theta=linspace(0, 2*pi); r=cos(4*theta); polar(theta, r); 對於大量的資料,我們可用hist來顯示資料的分情況和統(tǒng)計特性。下面幾個命令可用來驗證randn產生的高斯亂數分: x=randn(5000, 1); % 產生5000個 m=0,s=1 的高斯亂數 hist(x,20); % 20代表長條的個數 rose和hist很接近,只不過是將資料大小視為角度,資料個數視為距離,并用極座標繪制表示: x=randn(1000, 1); rose(x); stairs可畫
10、出階梯圖: 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,
11、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); 二、 三維立體圖形三維繪圖函數contour二維等值線圖,即從上向下看contour3等值線圖contour3等值線圖fill3填充的多邊形mesh網格圖meshc具有基本等值線圖的網格圖meshz有零平面的網格圖pcolor二維偽彩色繪圖,即從上向下看surf圖plot3直線圖quiver二維帶方
12、向箭頭的速度圖surf曲面圖surfc具有基本等值線圖的曲面圖surfl帶亮度的曲面圖waterfall無交叉線的網格圖 三維繪圖工具axis修正坐標軸屬性clf清除圖形窗口clabel放置等值線標簽close關閉圖形窗口figure創(chuàng)建或選擇圖形窗口getframe捕捉動畫楨grid放置網格griddata對畫圖用的數據進行內插hidden隱蔽網格圖線條hold保留當前圖形meshgrid產生三維繪圖數據movie放動畫moviein創(chuàng)建楨矩陣,存儲動畫shading在曲面圖和偽彩色圖中用分塊、平滑和插值加陰影subplot在圖形窗口內畫子圖text在指定的位置放文本title放置標題vie
13、w改變圖形的視角xlabel放置x軸標記ylabel放置y軸標記zlabel放置z軸標記函數viewview(az,el)設置視圖的方位角az和仰角elview(az,el)view(x,y,z)在笛卡兒坐標系中沿向量x,y,z正視原點設置視圖,例如view(0 0 1)=view(0,90)view(2)設置缺省的二維視圖,az=0,el=90view(3)設置缺省的三維視圖,az=-37.5,el=30az,el=view返回當前的方位角az和仰角elview(T)用一個4×4的轉置矩陣T來設置視圖T=view返回當前的4×4轉置矩陣 plot3命令將繪制二維圖形的函數
14、plot的特性擴展到三維空間圖形。函數格式除了包括第三維的信息(比如Z方向)之外,與二維函數plot相同。plot3一般語法調用格式是plot3(x,y,z,S),這里x,y和z是向量或矩陣,S是可選的字符串,用來指定顏色、標記符號和/或線形(s可以省略)。三維螺旋線例子: t=0:pi/50:10*pi; plot3(sin(t),cos(t),t) grid %添加網格plot3可畫出空間中的曲線: t=linspace(0,20*pi, 501); plot3(t.*sin(t), t.*cos(t), t); %注意用點乘 .*亦可同時畫出兩條空間中的曲線:t=linspace(0,
15、10*pi, 501); plot3(t.*sin(t), t.*cos(t), t, t.*sin(t), t.*cos(t), -t); 正弦曲線圖 x=linspace(0,3*pi); % 0到 3pi 間100個數據點 z1=sin(x); z2=sin(2*x); z3=sin(3*x); y1=zeros(100); % 含有100個數據的 0數組 y3=zeros(100); y2=y3/2; plot3(x,y1,z1,x,y2,z2,x,y3,z3);利用在xy平面的矩形網格點上的z軸坐標值,MATLAB定義了一個網格曲面。MATLAB通過將鄰接的點用直線連接起來形成網狀曲
16、面,其結果好象在數據點有結點的魚網。mesh可畫出立體網狀圖.畫出由函數形成的立體網狀圖: x=linspace(-2, 2, 25); % 在x軸上取25點 y=linspace(-2, 2, 25); % 在y軸上取25點 xx,yy=meshgrid(x, y); % xx和yy都是21x21的矩陣 zz=xx.*exp(-xx.2-yy.2); % 計算函數值,zz也是21x21的矩陣 mesh(xx, yy, zz); % 畫出立體網狀圖 曲面圖,除了各線條之間的空檔(稱作補片)用顏色填充以外,和網格圖看起來是一樣的。這種圖一般使用函數surf來繪制。surf和mesh的用法類似:
17、x=linspace(-2, 2, 25); % 在x軸上取25點 y=linspace(-2, 2, 25); % 在y軸上取25點 xx,yy=meshgrid(x, y); % xx和yy都是21x21的矩陣 zz=xx.*exp(-xx.2-yy.2); % 計算函數值,zz也是21x21的矩陣 surf(xx, yy, zz); % 畫出立體曲面圖 MATLAB提供了一個peaks函數,可產生一個凹凸有致的曲面,包含了三個局部極大點及三個局部極小點,其方程式為: 要畫出此函數的最快方法即是直接鍵入peaks: peaks z = 3*(1-x).2.*exp(-(x.2) - (y+
18、1).2) . - 10*(x/5 - x.3 - y.5).*exp(-x.2-y.2) . - 1/3*exp(-(x+1).2 - y.2) 我們亦可對peaks函數取點,再以各種不同方法進行繪圖。meshz可將曲面加上圍裙: x,y,z=peaks; meshz(x,y,z); waterfall可在x方向或y方向產生水流效果: x,y,z=peaks; waterfall(x,y,z); 下列命令產生在y方向的水流效果: x,y,z=peaks; waterfall(x',y',z'); meshc同時畫出網狀圖與等高線: x,y,z=peaks; meshc
19、(x,y,z); surfc同時畫出曲面圖與等高線: x,y,z=peaks; surfc(x,y,z); contour3畫出曲面在三度空間中的等高線: contour3(peaks, 20); contour畫出曲面等高線在XY平面的投影: contour(peaks, 20); 剔透玲瓏球X0,Y0,Z0=sphere(30); %產生單位球面的三維坐標X=2*X0;Y=2*Y0;Z=2*Z0; %產生半徑為2的球面的三維坐標surf(X0,Y0,Z0); %畫單位球面shading interp %采用插補明暗處理hold on; mesh(X,Y,Z);hold off %畫外球面hidden off %產生透視效果axis off %不顯示坐標軸動態(tài)圖形動畫效果 彗星狀軌
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024有擔保的購銷合同
- 美食漫畫課程設計案例
- 2025年度古董藝術品買賣雙方合作發(fā)展合同3篇
- 2024建設項目居間合同書
- 2024汽車產業(yè)人才培養(yǎng)與引進合同
- 簡單郵件課程設計
- 2025年度大型體育賽事贊助合同補充協(xié)議2篇
- 2025版網絡安全風險預警系統(tǒng)開發(fā)協(xié)議合同3篇
- 2024年綠色生態(tài)石材項目承包施工及后期維護服務合同3篇
- 2024模具加工技術培訓與人才培養(yǎng)合同3篇
- 手術室發(fā)生地震應急預案演練
- 期末測試卷(一)2024-2025學年 人教版PEP英語五年級上冊(含答案含聽力原文無聽力音頻)
- 2023-2024學年廣東省深圳市南山區(qū)八年級(上)期末英語試卷
- 漢服娃衣創(chuàng)意設計與制作智慧樹知到期末考試答案章節(jié)答案2024年四川文化產業(yè)職業(yè)學院
- 廣東省中山市2023-2024學年四年級上學期期末數學試卷
- 8款-組織架構圖(可編輯)
- 機制砂檢測報告
- 省教育廳檢查組接待方案
- 氣動潛孔錘施工方案
- 云南省教育科學規(guī)劃課題開題報告 - 云南省教育科學研究院
- 人民法院涉訴信訪案件終結辦法
評論
0/150
提交評論