Open In App

Plot a 3D Contour in MATLAB

Last Updated : 21 Apr, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

Contour plots are used to show 3D surfaces by plotting z- slides on a 2D surface. A contour plot is also called a line plot. In contour, we have 3 variables x, y, z. The x, y variables are used to give the values for z, ( z=f(x, y)). The x and y variables are usually in a grid called meshgrid.

There are various contour plots in MATLAB like contour, contourf, contour3, contourc, countourslice, clabel, and fcontour. In this article, we will see how to plot 3D contour in MATLAB. To plot 3D contour we will use countour3() to plot different types of 3D modules. 

Syntax:

  • contour3(X,Y,Z): Specifies the x and y coordinates for the values in Z.
  • contour3(Z): Creates a 3-D contour plot containing the isolines of matrix Z, where Z contains height values on the x-y plane.
  • contour3(___,levels): Specify levels as a scalar value n to display the contour lines at n automatically chosen levels (heights).
  • contour3(___,LineSpec): Specifies the style and color of the contour line.

Step-wise Approach:

  • Enter the inputs for x and y in meshgrid function.

Matlab




% plot the points for x and y
[x,y]=meshgrid(-5 : 0.1 :5);


  • Pass the value for z using x and y in an equation.

Matlab




% give any equation for z variable
z = x.^2 + y.^2 ;
  
% disp is used to display the 
% value for z
disp(z);


  • Use contour3 to plot 3d contour and to label the axis use label() method.

Matlab




% to plot the 3D surface use contour3()
% contour3(z ,levels), levels is used to 
% display the height for the contourlines
contour3(z,25);
  
% to label x ,y ,z axis and title.
xlabel('x-axis');
ylabel('y-axis');
zlabel('z-axis');
title('3D contour');


Below is the complete program:

Matlab




% code for 3D plot
% plot the points for x and y
[x,y]=meshgrid(-5 : 0.1 :5);
  
% give any equation for z variable
z = x.^2 + y.^2 ;
disp(z);
  
% to plot the 3D surface use contour3()
% contour3(z ,levels), levels is used 
% to display the height for the contour
% lines
contour3(z,25);
  
% to label x ,y ,z axis and title.
xlabel('x-axis');
ylabel('y-axis');
zlabel('z-axis');
title('3D contour');


Output:

Example 1:

Here is another example similar to the previous one.

Matlab




% code for 3D plot,
% plot the points for x and y
[x,y]=meshgrid(-5 : 0.1 :5);
  
% give any equation for z variable
z = x.^2 - y.^2 ;
disp(z);
  
% to plot the 3D surface use contour3()
% contour3(z ,levels), levels is used to
% display the height for the contourlines
contour3(z,25);
  
% to label x ,y , z axis and title
xlabel('x-axis');
ylabel('y-axis');
zlabel('z-axis');
title('3D contour');


Output:

Example 2:

MATLAB program to generate a 3D Contour:

Matlab




% code for 3D plot,
% plot the points for x and y
[x,y]=meshgrid(-7 : 0.1 : 7);
  
% give any equation for z variable
z = sin(x)+ cos(y) ;
disp(z);
  
% to plot the 3D surface use contour3()
% contour3(z ,levels), levels is used to 
% display the height for the contour
% lines
contour3(z,25);
  
% to label x ,y and z axis
xlabel('x-axis');
ylabel('y-axis');
zlabel('z-axis');
title('3D contour');


Output:



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads