MATLAB圖形
本章將繼續探索MATLAB繪圖和圖形功能。我們將討論:
-
繪製條形圖
-
繪製等值線
-
三維圖
繪製條形圖
bar 命令繪製一個二維條形圖。讓我們采取了一個例子來證明這個想法。
示例
讓我們有一個假想的有10名學生的教室。我們知道這些學生獲得的分數的百分比是75,58,90,87,50,85,92,75,60和95。這個數據,我們將繪製條形圖。
創建一個腳本文件,並輸入下麵的代碼:
x = [1:10]; y = [75, 58, 90, 87, 50, 85, 92, 75, 60, 95]; bar(x,y), xlabel('Student'),ylabel('Score'), title('First Sem:') print -deps graph.eps
當運行該文件,MATLAB顯示以下的棒形圖:
繪製等值線
contour 線的兩個變量的函數的曲線,沿著該函數具有一個恒定值。加入等於標高點,一個給定的水平,如平均海平麵以上用於創建等高線圖等高線。
MATLAB 提供了一個輪廓繪製等高線圖的函數。
例子
讓我們生成的等高線圖,顯示了對於一個給定的功能的輪廓線 g = f(x, y)。這個函數有兩個變量。因此,我們將生成兩個獨立的變量,即兩個數據集 x和y。這是通過調用meshgrid 命令。
meshgrid命令是用於產生一個矩陣的元素,賦予x和y的範圍內進行了在每一種情況下的增量同規格一起。
讓我們繪製函數 g = f(x, y), where −5 ≤ x ≤ 5, −3 ≤ y ≤ 3. 讓我們來為這兩個值的增量為0.1。這些變量設置為:
[x,y] = meshgrid(–5:0.1:5, –3:0.1:3);
最後,我們需要分配功能。函數是:x2 + y2
創建一個腳本文件,並鍵入下麵的代碼:
[x,y] = meshgrid(-5:0.1:5,-3:0.1:3); %independent variables g = x.^2 + y.^2; % our function contour(x,y,g) % call the contour function print -deps graph.eps
當運行該文件,MATLAB顯示下麵的等高線圖:
讓我們修改代碼,一點點地美化了等高線圖:
[x,y] = meshgrid(-5:0.1:5,-3:0.1:3); %independent variables g = x.^2 + y.^2; % our function [C, h] = contour(x,y,g); % call the contour function set(h,'ShowText','on','TextStep',get(h,'LevelStep')*2) print -deps graph.eps
當您運行該文件,MATLAB顯示下麵的等高線圖:
三維圖
三維繪圖基本顯示兩個變量中的一個函數定義的表麵, g = f (x,y).
像以前一樣,定義g,我們首先創建一組點(X,Y)函數,使用meshgrid命令在域。接下來,我們該函數本身分配。最後使用surf 命令來創建曲麵圖。
下麵的例子演示了這一概念:
示例
讓我們創建一個三維地圖函數表麵 g = xe-(x2 + y2)
創建一個腳本文件,並輸入下麵的代碼:
[x,y] = meshgrid(-2:.2:2); g = x .* exp(-x.^2 - y.^2); surf(x, y, g) print -deps graph.eps
當您運行該文件,MATLAB 顯示下麵的3-D地圖:
也可以使用的網格的命令來生成一個三維表麵。然而,surfcommand顯示連接線和麵的表麵的顏色,而meshcommand 創建一個線框表麵色線,連接定義點。