- Matlab 教程
- MATLAB - 首頁
- MATLAB - 概述
- MATLAB - 特性
- MATLAB - 環境設定
- MATLAB - 編輯器
- MATLAB - 線上版
- MATLAB - 工作區
- MATLAB - 語法
- MATLAB - 變數
- MATLAB - 命令
- MATLAB - 資料型別
- MATLAB - 運算子
- MATLAB - 日期和時間
- MATLAB - 數字
- MATLAB - 隨機數
- MATLAB - 字串和字元
- MATLAB - 文字格式化
- MATLAB - 時間表
- MATLAB - M 檔案
- MATLAB - 冒號表示法
- MATLAB - 資料匯入
- MATLAB - 資料匯出
- MATLAB - 資料歸一化
- MATLAB - 預定義變數
- MATLAB - 決策
- MATLAB - 決策語句
- MATLAB - if 語句
- MATLAB - if else 語句
- MATLAB - if…elseif else 語句
- MATLAB - 巢狀 if 語句
- MATLAB - switch 語句
- MATLAB - 巢狀 switch
- MATLAB - 迴圈
- MATLAB - 迴圈
- MATLAB - for 迴圈
- MATLAB - while 迴圈
- MATLAB - 巢狀迴圈
- MATLAB - break 語句
- MATLAB - continue 語句
- MATLAB - end 語句
- MATLAB - 陣列
- MATLAB - 陣列
- MATLAB - 向量
- MATLAB - 轉置運算子
- MATLAB - 陣列索引
- MATLAB - 多維陣列
- MATLAB - 相容陣列
- MATLAB - 分類陣列
- MATLAB - 元胞陣列
- MATLAB - 矩陣
- MATLAB - 稀疏矩陣
- MATLAB - 表格
- MATLAB - 結構體
- MATLAB - 陣列乘法
- MATLAB - 陣列除法
- MATLAB - 陣列函式
- MATLAB - 函式
- MATLAB - 函式
- MATLAB - 函式引數
- MATLAB - 匿名函式
- MATLAB - 巢狀函式
- MATLAB - return 語句
- MATLAB - 無返回值函式
- MATLAB - 區域性函式
- MATLAB - 全域性變數
- MATLAB - 函式控制代碼
- MATLAB - filter 函式
- MATLAB - 階乘
- MATLAB - 私有函式
- MATLAB - 子函式
- MATLAB - 遞迴函式
- MATLAB - 函式優先順序
- MATLAB - map 函式
- MATLAB - mean 函式
- MATLAB - end 函式
- MATLAB - 錯誤處理
- MATLAB - 錯誤處理
- MATLAB - try...catch 語句
- MATLAB - 除錯
- MATLAB 繪圖
- MATLAB 繪圖
- MATLAB - 繪製陣列
- MATLAB - 繪製向量
- MATLAB - 條形圖
- MATLAB - 直方圖
- MATLAB - 圖形
- MATLAB - 二維線圖
- MATLAB - 三維圖
- MATLAB - 圖表格式化
- MATLAB - 對數座標圖
- MATLAB - 繪製誤差線
- MATLAB - 繪製三維等值線圖
- MATLAB - 極座標圖
- MATLAB - 散點圖
- MATLAB - 繪製表示式或函式
- MATLAB - 繪製矩形
- MATLAB - 繪製頻譜圖
- MATLAB - 繪製網格曲面
- MATLAB - 繪製正弦波
- MATLAB - 插值
- MATLAB - 插值
- MATLAB - 線性插值
- MATLAB - 二維陣列插值
- MATLAB - 三維陣列插值
- MATLAB - 多項式
- MATLAB - 多項式
- MATLAB - 多項式加法
- MATLAB - 多項式乘法
- MATLAB - 多項式除法
- MATLAB - 多項式的導數
- MATLAB - 變換
- MATLAB - 變換函式
- MATLAB - 拉普拉斯變換
- MATLAB - 拉普拉斯濾波器
- MATLAB - 高斯-拉普拉斯濾波器
- MATLAB - 逆傅立葉變換
- MATLAB - 傅立葉變換
- MATLAB - 快速傅立葉變換
- MATLAB - 二維逆餘弦變換
- MATLAB - 向座標軸新增圖例
- MATLAB - 面向物件
- MATLAB - 面向物件程式設計
- MATLAB - 類和物件
- MATLAB - 函式過載
- MATLAB - 運算子過載
- MATLAB - 使用者定義類
- MATLAB - 複製物件
- MATLAB - 代數
- MATLAB - 線性代數
- MATLAB - 高斯消元法
- MATLAB - 高斯-約旦消元法
- MATLAB - 簡化行階梯型
- MATLAB - 特徵值和特徵向量
- MATLAB - 積分
- MATLAB - 積分
- MATLAB - 二重積分
- MATLAB - 梯形法則
- MATLAB - 辛普森法則
- MATLAB - 其他
- MATLAB - 微積分
- MATLAB - 微分
- MATLAB - 矩陣的逆
- MATLAB - GNU Octave
- MATLAB - Simulink
- MATLAB - 有用資源
- MATLAB - 快速指南
- MATLAB - 有用資源
- MATLAB - 討論
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 軸生成標籤。
title 命令允許您在圖表上新增標題。
grid on 命令允許您在圖表上新增網格線。
axis equal 命令允許生成具有相同比例因子和兩軸上相同間距的圖表。
axis square 命令生成一個正方形圖表。
示例
建立一個指令碼檔案並輸入以下程式碼:
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 提供八種基本顏色選項來繪製圖形。下表顯示顏色及其程式碼:
| 程式碼 | 顏色 |
|---|---|
| w | 白色 |
| k | 黑色 |
| b | 藍色 |
| r | 紅色 |
| c | 青色 |
| g | 綠色 |
| m | 品紅色 |
| y | 黃色 |
示例
讓我們繪製兩個多項式函式的圖形
f(x) = 3x4 + 2x3+ 7x2 + 2x + 9 和
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 將生成以下圖表:
設定座標軸比例
axis 命令允許您設定座標軸比例。您可以使用以下方式的 axis 命令為 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 將生成以下圖表: