MATLAB三維繪圖(三)繪制等值線圖


MATLAB三維繪圖(三)繪制等值線圖

1、使用contour函數繪制等值圖,示例:

%% 顯示不同顏色的梯度圖
clear; clc; close all;
x = -3.5:0.2:3.5; 
y = -3.5:0.2:3.5;
[X,Y] = meshgrid(x,y);  % 獲取網格
Z = X.*exp(-X.^2-Y.^2);
subplot(2,1,1); 
mesh(X,Y,Z);   % 繪制三維圖
axis square;  % 坐標軸之間的尺度相等
subplot(2,1,2); 
contour(X,Y,Z); % 顯示不同高度的線段
axis square;  % 坐標軸之間的尺度相等

效果顯示:
在這里插入圖片描述
2、使用clabel函數查看等值線上的值,示例:

%% 使用clabel函數查看等值線的值
clear; clc; close all;
x = -3.5:0.2:3.5; 
y = -3.5:0.2:3.5;
[X,Y] = meshgrid(x,y); 
Z = X.*exp(-X.^2-Y.^2);
[C,h] = contour(Z); % 顯示梯度,並且獲取梯度數據進行操作
clabel(C,h); % 顯示梯度的值

效果顯示:
在這里插入圖片描述
3、使用contourf函數查看等值線,示例:

%% 使用contourf函數顯示等值線,並且有顏色填充
clear; clc; close all;
x = -3.5:0.2:3.5; 
y = -3.5:0.2:3.5;
[X,Y] = meshgrid(x,y); 
Z = X.*exp(-X.^2-Y.^2);
contourf(Z);   % 顯示梯度,並且使用顏色進行填充

效果顯示:
在這里插入圖片描述
4、使用meshc函數和surfc函數查看原圖和等值線圖的對比,示例:

%% meshc和surfc顯示三維圖,並且顯示不同的等高線
clear; clc; close all;
x = -3.5:0.2:3.5; 
y = -3.5:0.2:3.5;
[X,Y] = meshgrid(x,y);  % 獲取網格
Z = X.*exp(-X.^2-Y.^2);
subplot(1,2,1); 
meshc(X,Y,Z);  % 繪制三維圖,並且顯示等高線
subplot(1,2,2); 
surfc(X,Y,Z);  % 繪制三維圖,並且顯示等高線

效果顯示:
在這里插入圖片描述
說明:一般情況下如果想看原來圖像和等值線的對比圖,在函數后面加字母c即可,如meshc查看mesh函數繪制圖形的等值圖和原圖的對比。
4、使用隱含數繪制等值線圖:
使用ezcontour函數繪制,示例:

%% 符號函數的等值線圖
clear; clc; close all;
figure;
ezcontour('x.*exp(-x.^2-y.^2)',[-3 3]);

效果顯示:
在這里插入圖片描述
使用ezmeshc函數繪制,示例:

%%  帶有等值線的三維網格圖
clear; clc; close all;
figure;
ezmeshc('x.*exp(-5*x.^2-8*y.^2)');

效果顯示:
在這里插入圖片描述
使用ezsurfc函數繪制,示例:

%%  帶有等值線的三維彩色的曲面圖
clear; clc; close all;
figure;
ezsurfc('4*x.*exp(-4*x.^2 - 6*y.^2)');

效果顯示:
在這里插入圖片描述

想了解更多繪圖信息,請看下面博文:
三維:
MATLAB三維繪圖(五)高級三維繪圖
MATLAB三維繪圖(四)繪制特殊的三維圖
MATLAB三維繪圖(二)使用隱函數作三維圖
MATLAB三維繪圖(一)三維基礎繪圖
MATLAB三維繪圖基礎meshgrid函數的用法解析

二維:
MATLAB二維繪圖(四)其他特殊的二維繪圖函數介紹及用法
MATLAB二維繪圖(三)操作繪圖句柄顯示特定的效果
MATLAB二維繪圖(二)向圖中添加標題,坐標軸,圖標和文字信息
MATLAB二維繪圖(一)使用plot函數進行簡單繪圖
fill填充函數解析及用法示例


免責聲明!

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



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