一、基礎繪圖
Matlab的plot函數是最常用的繪製二維圖形的函數之一,它可以用來繪製線性圖、散點圖、餅圖、直方圖等等。繪製基礎圖形非常簡單,只需要提供要繪製的數據即可。
% 繪製折線圖 x = 0:0.1:pi; y = sin(x); plot(x,y)
運行該代碼,將會繪製出一條sin函數曲線。
除了基礎繪圖,我們還可以對繪製出來的圖像進行格式化處理,比如修改線條顏色、添加圖例、調整坐標軸範圍等等。
% 修改線條顏色 x = 0:0.1:pi; y = sin(x); plot(x,y,'r') % 將折線顏色改為紅色
運行該代碼,將會繪製出一條紅色的sin函數曲線。
% 添加圖例 x = 0:0.1:pi; y1 = sin(x); y2 = cos(x); plot(x,y1,'r',x,y2,'g') legend('sin','cos') % 添加圖例
運行該代碼,將會繪製出一條紅色的sin函數曲線和一條綠色的cos函數曲線,並在圖像上添加上了“sin”和“cos”兩個圖例。
二、多子圖繪製
某些情況下,我們需要在同一張圖中繪製多幅子圖或多個子圖,這時候可以使用subplot函數將一個大圖劃分成多個小圖進行繪製。
% 繪製多個子圖 x = 0:0.1:pi; y1 = sin(x); y2 = cos(x); y3 = tan(x); subplot(2,2,1) % 第一個子圖 plot(x,y1) subplot(2,2,2) % 第二個子圖 plot(x,y2) subplot(2,2,[3 4]) % 第三個和第四個子圖 plot(x,y3)
運行該代碼,將會繪製出一張有三個子圖的大圖,第一個子圖繪製sin函數曲線,第二個子圖繪製cos函數曲線,第三個和第四個子圖繪製tan函數曲線。
三、圖像格式化
Matlab中還提供了豐富的圖像格式化手段,使得圖像更具可讀性、美觀性。下面是一些常見的圖像格式化操作:
- 修改坐標軸範圍:axis函數可以用來修改x軸和y軸的範圍。
- 添加標題和標籤:title、xlabel、ylabel函數可以分別添加圖像的標題和坐標軸標籤。
- 修改線條粗細:在plot函數中使用LineWidth參數可以修改線條的粗細。
% 圖像格式化案例 x = 0:0.1:pi; y1 = sin(x); y2 = cos(x); plot(x,y1,'r',x,y2,'g','LineWidth',2) title('Sin and Cos Curve') % 添加標題 xlabel('X-axis') % 添加x軸標籤 ylabel('Y-axis') % 添加y軸標籤 axis([0 pi -1 1]) % 修改坐標軸範圍
運行該代碼,將會繪製出一條紅色的sin函數曲線和一條綠色的cos函數曲線,帶有標題、坐標軸標籤,並且x軸的範圍是0到π,y軸的範圍是-1到1。
四、三維圖像繪製
除了二維圖像,Matlab還支持繪製三維圖像,比如三維散點圖、三維曲面等等。
% 繪製三維曲面 [x,y] = meshgrid(-2:0.2:2); z = x.*exp(-x.^2-y.^2); surf(x,y,z)
運行該代碼,將會繪製出一個三維曲面。
繪製三維圖像需要使用到Matlab中的一些專業函數,比如surfl、meshgrid等等。通過這些函數的組合使用,可以繪製出各種各樣的三維圖像。
五、數據可視化案例
通過Matlab繪製的圖像,可以幫助我們更好地理解數據本身所包含的信息和規律。下面是兩個數據可視化案例。
案例1:人口增長數據
我們使用Matlab繪製人口增長數據的折線圖,以便更好地了解人口增長的趨勢和規律。
% 人口增長數據可視化 data = load('population.txt'); year = data(:,1); pop = data(:,2); plot(year,pop) xlabel('Year') ylabel('Population (in millions)') title('World Population Growth')
運行該代碼,將會繪製出一條人口增長折線圖,橫軸表示年份,縱軸表示人口數。
案例2:電影票房數據
我們使用Matlab繪製電影票房數據的直方圖,以便更好地了解電影票房的分布規律。
% 電影票房數據可視化 data = [27.5 30.0 26.5 22.0 29.5 24.0 25.5 25.0 24.0 25.5 27.0 26.5 27.5 26.5 28.0 29.0 27.5 29.5 27.0 26.5 28.5 25.5 29.0 28.0 30.0 26.5 29.0 29.5 25.5 28.0 26.0 27.5 25.0 25.5 26.5 28.0 23.5 25.5 25.0 24.0 26.5 24.5 25.0 25.5 27.5 22.5 26.0 23.5 26.5 29.0]; histogram(data,10) xlabel('Box Office (in millions)') ylabel('Frequency') title('Box Office Distribution')
運行該代碼,將會繪製齣電影票房數據的直方圖,橫軸表示票房數,縱軸表示票房數出現的頻率。
原創文章,作者:NNYD,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/134276.html