- 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 End 語句
- 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 - 返回語句
- MATLAB - 空函式
- MATLAB - 區域性函式
- MATLAB - 全域性變數
- MATLAB - 函式控制代碼
- MATLAB - 濾波器函式
- MATLAB - 階乘
- MATLAB - 私有函式
- MATLAB - 子函式
- MATLAB - 遞迴函式
- MATLAB - 函式優先順序順序
- MATLAB - 對映函式
- MATLAB - 平均值函式
- MATLAB - End 函式
- MATLAB - 錯誤處理
- MATLAB - 錯誤處理
- MATLAB - Try...Catch 語句
- MATLAB - 除錯
- MATLAB - 繪圖
- MATLAB - 繪圖
- MATLAB - 繪製陣列
- MATLAB - 繪製向量
- MATLAB - 條形圖
- MATLAB - 直方圖
- MATLAB - 圖形
- MATLAB - 2D 線性圖
- MATLAB - 3D 圖形
- MATLAB - 格式化圖形
- MATLAB - 對數座標軸圖形
- MATLAB - 繪製誤差條
- MATLAB - 繪製 3D 等值線圖
- MATLAB - 極座標圖
- MATLAB - 散點圖
- MATLAB - 繪製表示式或函式
- MATLAB - 繪製矩形
- MATLAB - 繪製頻譜圖
- MATLAB - 繪製網格曲面
- MATLAB - 繪製正弦波
- MATLAB - 插值
- MATLAB - 插值
- MATLAB - 線性插值
- MATLAB - 2D 陣列插值
- MATLAB - 3D 陣列插值
- MATLAB - 多項式
- MATLAB - 多項式
- MATLAB - 多項式加法
- MATLAB - 多項式乘法
- MATLAB - 多項式除法
- MATLAB - 多項式的導數
- MATLAB - 變換
- MATLAB - 變換
- MATLAB - 拉普拉斯變換
- MATLAB - 拉普拉斯濾波器
- MATLAB - 高斯-拉普拉斯濾波器
- MATLAB - 逆傅立葉變換
- MATLAB - 傅立葉變換
- MATLAB - 快速傅立葉變換
- MATLAB - 2D 逆餘弦變換
- 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 - 圖形
本章將繼續探討 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 會顯示以下條形圖:
繪製等值線
函式兩個變數的等值線是在函式具有恆定值的曲線。等值線用於透過連線高於給定水平(例如平均海平面)的相同高度的點來建立等值線圖。
MATLAB 提供了一個 contour 函式來繪製等值線圖。
示例
讓我們生成一個等值線圖,該圖顯示給定函式 g = f(x, y) 的等值線。此函式有兩個變數。因此,我們將必須生成兩個自變數,即兩個資料集 x 和 y。這是透過呼叫 meshgrid 命令來完成的。
meshgrid 命令用於生成一個元素矩陣,這些元素給出 x 和 y 上的範圍以及每種情況下增量的規範。
讓我們繪製函式 g = f(x, y),其中 -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,我們首先使用 meshgrid 命令在函式的域上建立一組 (x,y) 點。接下來,我們分配函式本身。最後,我們使用 surf 命令建立曲面圖。
以下示例演示了該概念:
示例
讓我們為函式 g = xe-(x2 + y2) 建立一個 3D 曲面圖
建立一個指令碼檔案並鍵入以下程式碼:
[x,y] = meshgrid(-2:.2:2); g = x .* exp(-x.^2 - y.^2); surf(x, y, g) print -deps graph.eps
執行該檔案時,MATLAB 會顯示以下 3D 圖:
您還可以使用 mesh 命令生成三維曲面。但是,surf 命令以彩色顯示連線線和曲面的面,而 mesh 命令建立帶彩色線的線框曲面,連線定義點。