位置:首頁 > 高級語言 > Matlab教學 > MATLAB圖形

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顯示以下的棒形圖:

Drawing Bar Charts

繪製等值線

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顯示下麵的等高線圖:

Contour Map in 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顯示下麵的等高線圖:

A good looking Contour Map

三維圖

三維繪圖基本顯示兩個變量中的一個函數定義的表麵, 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地圖:

3-D Map in Matlab

也可以使用的網格的命令來生成一個三維表麵。然而,surfcommand顯示連接線和麵的表麵的顏色,而meshcommand 創建一個線框表麵色線,連接定義點。