MATLAB繪圖
要繪製函數圖形,需要采取以下步驟:
-
定義x,通過指定的變量 x 值的範圍,該函數被繪製
-
定義函數, y = f(x)
-
調用plot命令,如 plot(x, y)
下麵的例子演示了這一概念。讓我們繪製簡單的函數y = x , x值的範圍從0到100,增量為5。
創建一個腳本文件,並輸入下麵的代碼:
x = [0:5:100]; y = x; plot(x, y)
當運行該文件,MATLAB顯示下麵的圖形:
讓我們舉一個例子,繪製函數y = x2。在這個例子中,我們將繪製兩個圖形具有相同的函數,但在第二次,我們將減少值的增量。請注意,因為我們減少增量,圖形變得平滑。
創建一個腳本文件,並輸入下麵的代碼:
x = [1 2 3 4 5 6 7 8 9 10]; x = [-100:20:100]; y = x.^2; plot(x, y)
當您運行該文件,MATLAB顯示下麵的圖形:
更改代碼文件小,減少增量5:
x = [-100:5:100]; y = x.^2; plot(x, y)
MATLAB繪製一條平滑的曲線圖:
添加標題,標簽,網格線和縮放的圖形
MATLAB允許添加標題,調整軸的x軸和y軸,網格線,並沿標簽美化圖形。
-
xlabel和ylabel指令的產生沿x軸和y軸的標簽。
-
標題命令允許你把圖表上的一個標題。
-
網格命令允許你把圖上的網格線。
-
軸等於命令允許生成與同等規模因素和空間兩個坐標軸上的積點。
-
軸方形命令生成一個正方形的積點。
示例
創建一個腳本文件,並輸入下麵的代碼:
x = [0:0.01:10]; y = sin(x); plot(x, y), xlabel('x'), ylabel('Sin(x)'), title('Sin(x) Graph'), grid on, axis equal
MATLAB生成如下圖:
在同一張圖上繪製多個函數
您可以繪製多個圖形相同的積點。下麵的例子演示了這一概念:
示例
創建一個腳本文件,並輸入下麵的代碼:
x = [0 : 0.01: 10]; y = sin(x); g = cos(x); plot(x, y, x, g, '.-'), legend('Sin(x)', 'Cos(x)')
MATLAB生成如下圖:
在走勢圖上的顏色設置
MATLAB提供八個基本繪製圖形的顏色選項。下表顯示的顏色和他們的代碼:
Color | Code |
---|---|
White | w |
Black | k |
Blue | b |
Red | r |
Cyan | c |
Green | g |
Magenta | m |
Yellow | y |
示例
讓我們繪製圖形兩個多項式
-
f(x) = 3x4 + 2x3+ 7x2 + 2x + 9 and
-
g(x) = 5x3 + 9x + 2
創建一個腳本文件,並輸入下麵的代碼:
x = [-10 : 0.01: 10]; y = 3*x.^4 + 2 * x.^3 + 7 * x.^2 + 2 * x + 9; g = 5 * x.^3 + 9 * x + 2; plot(x, y, 'r', x, g, 'g')
當您運行該文件,MATLAB生成下圖:
設置軸刻度
該的軸命令允許您設置軸的刻度。您可以提供的最小值和最大值的x和y軸以下列方式使用軸命令:
axis ( [xmin xmax ymin ymax] )
下麵的例子顯示了這一點:
示例
創建一個腳本文件,並輸入下麵的代碼:
x = [0 : 0.01: 10]; y = exp(-x).* sin(2*x + 3); plot(x, y), axis([0 10 -1 1])
當您運行該文件,MATLAB生成下圖:
生成子圖
當創建一個數組地塊在相同的數字,這些地塊被稱為子圖。subplot 命令創建子圖。
該命令的語法是:
subplot(m, n, p)
其中,m和n積陣列的行和列的數量,p指定把一個特定的積。
subplot 命令創建的每個繪圖都可以有其自己的特點。下麵的例子演示了這一概念:
示例
讓我們產生兩個圖:
y = e−1.5xsin(10x)
y = e−2xsin(10x)
創建一個腳本文件,並輸入下麵的代碼:
x = [0:0.01:5]; y = exp(-1.5*x).*sin(10*x); subplot(1,2,1) plot(x,y), xlabel('x'),ylabel('exp(–1.5x)*sin(10x)'),axis([0 5 -1 1]) y = exp(-2*x).*sin(10*x); subplot(1,2,2) plot(x,y),xlabel('x'),ylabel('exp(–2x)*sin(10x)'),axis([0 5 -1 1])
當您運行該文件,MATLAB生成下圖: