在 MATLAB 中的單個散點圖上繪製多個資料集
本教程將討論使用 MATLAB 中的 scatter()
函式和 hold on
命令在單個散點圖上繪製多個資料集。
在 MATLAB 中的單個散點圖上繪製多個資料集
Matlab 的 scatter()
函式將給定的資料集繪製為 2D 圖上的圓形或氣泡,scatter3()
函式將資料集繪製在 3D 圖上。我們還可以使用 scatter()
函式更改散點圖的圓圈或氣泡的許多屬性,例如它們的大小和顏色。
scatter()
和 scatter3()
函式已在本網站上通過示例進行了討論,但我們僅繪製了關於該主題的單個資料集。在繼續之前,請檢查此連結以檢視該主題。
現在我們將討論如何在 Matlab 中的單個散點圖上繪製多個資料集。我們必須對每個資料集分別使用 scatter()
函式來將其繪製在散點圖上。
假設我們在 Matlab 中使用多個繪圖函式。在這種情況下,只有最後一個圖是可見的,因為最後一個圖將覆蓋所有其他圖,我們只會看到最後一個圖,但是我們可以使用 Matlab 的 hold on
命令禁用 Matlab 的這種行為。
每次繪製散點圖時,我們都必須使用 hold on
命令,除了第一個散點圖以將所有給定的資料集繪製在同一個圖上。
例如,讓我們在 Matlab 的同一個散點圖上建立並繪製兩個資料集。請參閱下面的程式碼。
clc
clear
x = linspace(0,2*pi,100);
y = sin(x) + rand(1,100);
scatter(x,y)
x1 = linspace(0,4*pi,100);
y1 = sin(x) + rand(1,100);
hold on
scatter(x1,y1)
legend('scatter plot 1','scatter plot 2')
輸出:
我們在上面的程式碼中繪製了第一個資料集,然後在繪製第二個資料集之前使用了 hold on
命令。我們還使用了 legend()
函式來顯示哪種顏色屬於哪個資料集。
legend()
函式的引數數量等於繪製在單個散點圖上的資料集數量。我們可以給每個資料集一個唯一的名稱,以將其與其他資料集區分開來。
如果我們在同一個散點圖上繪製多個資料集,Matlab 會給每個資料集一個不同的顏色,使它們彼此不同。我們可以在上面的輸出中看到兩個資料集都有不同的顏色,圖上的圖例根據顏色給出了資料集的資訊。
根據資料集,軸限制可以在多個散點圖中發生變化。所以我們不能設定軸限制,因為有些資料集可能很長,如果我們設定短軸限制,整個資料集將不會被覆蓋在圖上。
我們也可以使用 scatter3()
函式來繪製 3D 平面中的多個繪圖,就像我們使用 scatter()
函式一樣。