Matlab繪圖基礎——繪制等高線圖


% 等高線矩陣的獲取
C = contourc(peaks(20),3);               % 獲取3個等級的等高線矩陣
% 等高線圖形的繪制
contour(peaks(20),10);colormap  autumn    % 繪制二維的等高線
contour3 (peaks(20),10);colormap  autumn    % 繪制三維的等高線
     % 還可以指定等高線的條數、坐標系的比例及某高度上的等高線
% 等高線圖形的填充
contourf(peaks(20),10);colormap  autumn   %繪制填充的二維等高線,有n的等級

%等高線圖形的標注

[x,y]=meshgrid(-2:.2:2); %生成格網
z=x.^exp(-x.^2-y.^2);   %函數
[C,h]=contour(x,y,z);colormap autumn;
%-----方法一
text_handle = clabel(C,h);
set(text_handle,'BackgroundColor',[1 1 .6],'Edgecolor',[.7 .7 .7])
                   %標注顏色設置為黃色           %標注的“邊界”設置為灰色
%-----方法二
clabel(C,h,'FontSize',10,'Color','r','LabelSpacing',72,'Rotation',0);
            %字體大小         %顏色      %兩個標注的間隔    %標注(字)是否旋轉
                                                  ——more information  see matlab幫助—— Contour Plots

等高線矩陣的數據結構

[C,h]=contour(x,y,z);colormap  autumn ;
    % C是等高線矩陣,包括x,y坐標和該點等高線的等級
           % C的記錄格式如下圖
height1 x1 …… xN1 height2 ……
點數N1 y1 …… yN1 點數N2 ……
注1:height1height2能相等,因為一個高度可能有多條等高線
注2:當等高線被邊界截斷時,等高線是不閉合的;閉合的等高線第一個點與最后一個點相等。
注3:h.ContourMatrix同樣可以獲取該等高線矩陣

如何只計算等高線矩陣

% 數據准備
[x,y]=meshgrid(-2:.2:2);   %生成格網
z=x.*exp(-x.^2-y.^2);      %函數
 
% 獲取height=k的等高線上的各點坐標
k = 0.2;
C = contourc(-2:.2:2,-2:.2:2,z,[k,k]);
 
% 獲取height=k的‘各’等高線上的各點坐標
k = [0,0.1,0.2,0.3,0.4];
C = contourc(-2:.2:2,-2:.2:2,z,k);
 
% 獲取n條等間距等高線上的各點坐標
n = 3;
C = contourc(-2:.2:2,-2:.2:2,z,3);

<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM