- 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 - return 語句
- MATLAB - 無返回值函式
- MATLAB - 區域性函式
- MATLAB - 全域性變數
- MATLAB - 函式控制代碼
- MATLAB - 濾波函式
- 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 - 新增圖例到座標軸
在 MATLAB 中,圖例是對繪圖中存在的資料序列或元素的圖形表示。它透過為每個元素提供標籤來幫助使用者理解繪圖中使用的不同顏色、線型或標記的含義。當繪圖包含多個數據序列或需要區分不同型別的資料時,圖例特別有用。
透過向繪圖新增圖例,使用者可以輕鬆識別哪個資料序列對應於哪組值,從而使繪圖更具資訊量且更容易解釋。可以根據位置、方向、字型大小和其他屬性自定義圖例,以增強繪圖的清晰度和美觀性。
legend 函式用於在 MATLAB 中建立圖例。
語法
legend legend(label1,...,labelN) legend(labels) legend(subset,___) legend(target,___)
語法解釋
legend − MATLAB 中的圖例就像理解繪圖的關鍵一樣。它顯示了繪圖中每條線、顏色或符號代表的內容。當您在 MATLAB 中繪製資料時,您可以為每組資料命名,圖例將使用這些名稱為繪圖新增標籤。如果您沒有命名,MATLAB 將將資料標記為“data1”、“data2”等。
圖例很智慧,會在您向繪圖中新增或刪除資料時自動更新自身。如果還沒有繪圖,則圖例將為空。如果沒有座標軸,MATLAB 將為圖例建立一個座標軸。
legend(label1,...,labelN) − MATLAB 中的函式用於向繪圖新增標籤,以解釋繪圖的每個部分代表什麼。您可以像這樣使用它:legend('Label1', 'Label2', 'Label3') 用 'Label1'、'Label2' 和 'Label3' 為繪圖的不同部分新增標籤。
legend(labels) − MATLAB 中的函式用於向繪圖新增標籤,以解釋繪圖的每個部分代表什麼。您可以像這樣使用它:legend({'Label1', 'Label2', 'Label3'}) 用 'Label1'、'Label2' 和 'Label3' 為繪圖的不同部分新增標籤。
legend(subset,___) − MATLAB 中的函式可用於僅在圖例中顯示繪圖中的特定專案。您可以透過提供表示要包含的專案的圖形物件的向量來執行此操作。這意味著您可以選擇繪圖中哪些部分在圖例中進行解釋,只顯示您選擇的元素。
legend(target,___) − MATLAB 中的函式可用於為特定座標軸或視覺化建立圖例,而不是當前活動的圖例。您可以透過將目標座標軸或視覺化指定為 legend 函式的第一個輸入引數來執行此操作。這允許您將圖例放置在任何您想要的位置,而不管當前繪圖如何。
示例 1:在示例中使用圖例
我們擁有的程式碼是。
% Create an array of values from 0 to pi x = linspace(0, pi); % Calculate y1 = cos(x) and plot it with a label 'cos(x)' y1 = cos(x); plot(x, y1, 'DisplayName', 'cos(x)') % Hold the current plot to add another plot hold on % Calculate y2 = cos(2x) and plot it with a label 'cos(2x)' y2 = cos(2*x); plot(x, y2, 'DisplayName', 'cos(2x)') % Release the hold to prevent further plots from being added to the current figure hold off % Display the legend with labels for each plot legend
在上面的示例中 −
- 我們使用 linspace 函式建立一個從 0 到 π 的 x 陣列。我們計算 y1,它是 x 中每個值的餘弦,表示 cos(x)。
- 我們使用藍線繪製 y1,並使用繪圖函式中的“DisplayName”引數將其標記為“cos(x)”。我們使用 hold on 保持當前繪圖處於活動狀態,以便我們可以新增另一個繪圖。
- 我們計算 y2,它是 2*x 的餘弦,表示 cos(2x)。我們使用紅色虛線繪製 y2 並將其標記為“cos(2x)”。
- 我們使用 hold off 釋放保持狀態,防止將更多繪圖新增到當前圖形。
- 最後,我們使用 legend 函式顯示圖例,該函式自動使用繪圖函式中設定的顯示名稱 (“DisplayName”) 為每個繪圖新增標籤。
我們的輸出是 −
示例 2:使用 legend(label1,...,labelN) 語法
我們擁有的程式碼是
x = 0:0.1:2*pi;
y1 = sin(x);
y2 = cos(x);
plot(x, y1, 'b-', x, y2, 'r--');
legend('sin(x)', 'cos(x)');
在此示例中,我們繪製 sin(x) 和 cos(x),然後使用 legend 函式向繪圖新增圖例。legend 函式採用字串作為引數,這些字串用作相應資料序列的標籤。
執行後,我們的輸出是 −
示例 3:使用語法 legend(labels)
我們擁有的程式碼是 −
x = 0:0.1:2*pi;
y1 = sin(x);
y2 = cos(x);
plot(x, y1, x, y2);
legend({'sin(x)', 'cos(x)'});
在上面的示例中 −
- 我們建立一個步長為 0.1 的從 0 到 2π 的向量 x。
- 我們分別計算 x 的正弦值和餘弦值,並將它們儲存在 y1 和 y2 中。
- 我們針對 x 繪製 y1 和 y2。
- legend 函式使用元胞陣列 {'sin(x)', 'cos(x)'} 作為其引數。元胞陣列中的每個字串都代表相應資料序列的標籤。此語法允許我們使用 'sin(x)' 和 'cos(x)' 為繪圖的不同部分新增標籤。
執行後,我們的輸出是 −
示例 4:使用語法 legend(subset,___)
我們擁有的程式碼如下 −
x = linspace(0, pi);
y1 = cos(x);
p1 = plot(x, y1);
hold on
y2 = cos(2*x);
plot(x, y2);
y3 = cos(3*x);
p3 = plot(x, y3);
% Release the hold to prevent further plots from being added to the current figure
hold off
% Display the legend with labels for the first and third plots
legend([p1, p3], {'First', 'Third'})
在上面的示例中 −
- 我們使用 linspace 函式建立一個從 0 到 π 的陣列 x。
- 我們計算 y1,它是 x 中每個值的餘弦,表示 cos(x),並繪製它,將繪圖控制代碼儲存為 p1。
- 我們使用 hold on 保持當前繪圖處於活動狀態,以便我們可以新增更多繪圖。
- 我們計算 y2,它是 2*x 的餘弦,表示 cos(2x),並繪製它(但不儲存繪圖控制代碼)。
- 我們計算 y3,它是 3*x 的餘弦,表示 cos(3x),並繪製它,將繪圖控制代碼儲存為 p3。
- 我們使用 hold off 釋放保持狀態,防止將更多繪圖新增到當前圖形。
- 最後,我們使用 legend 函式顯示圖例,指定繪圖控制代碼 [p1, p3] 以僅在圖例中包含第一個和第三個繪圖,併為它們提供標籤“First”和“Third”。
輸出為 −
示例 5:使用語法 legend(target,___)
我們擁有的程式碼是 −
figure;
ax = gca;
x = 0:0.1:2*pi;
y1 = sin(x);
y2 = cos(x);
plot(ax, x, y1, x, y2);
title(ax, 'Trigonometric Functions');
xlabel(ax, 'x');
ylabel(ax, 'y');
legend(ax, {'sin(x)', 'cos(x)'}, 'Location', 'best');
在上面的示例中 −
- 我們建立一個新圖形,並使用 gca 獲取當前座標軸 (ax)。
- 我們在指定的座標軸 ax 上繪製正弦和餘弦函式。
- 我們設定座標軸的標題和標籤,為繪圖提供上下文。
- legend 函式使用指定的座標軸 ax 作為第一個引數。這告訴 MATLAB 為指定的座標軸建立圖例,而不是當前座標軸。
- 圖例使用標籤“sin(x)”和“cos(x)”分別對應相應的曲線,並使用引數'Location', 'best' 將圖例放置在座標軸上最佳位置。 使用legend(target,___) 語法允許您為特定座標軸建立圖例,這在您有多個繪圖或圖形並希望控制圖例顯示位置時非常有用。
輸出為 −