how to plot matrix in matlab?
2 views (last 30 days)
Show older comments
I have 2d matrix for different resistivity layers and sounding (Depicted in x axis)

3 Comments
Answers (1)
Aditya
on 28 May 2025
Hi Aman,
To plot a 2D matrix in MATLAB, you can use the following functions:
- imagesc(): Used for visualizing matrix values as a color-scaled image. Best for displaying resistivity layers.
imagesc(matrix);
colorbar;
title('Heatmap of Matrix');
- bar() with 'stacked': Used to represent matrix columns in a stacked bar format. Ideal for layer comparisons.
bar(matrix, 'stacked');
title('Stacked Bar Chart');
- surf(): Used for creating 3D surface plots of matrix values.
surf(matrix);
shading interp;
title('3D Surface Plot');
If you want to read more about these functions, refer to the below MATLAB documentation link:
I hope this helps!
1 Comment
Walter Roberson
on 28 May 2025
A few notes:
imagesc() assumes that the values are equally spaced, and there is no way of changing that.
The XData and YData options of imagesc() allow you to select the X or Y coordinates that the image will be painted into; but be careful because the coordinates you pass are treated as the centers of the outermost pixels, not as the edges of the outermost pixels.
surf() is able to handle irregularly spaced data, including data coordinates that curve.
surf() takes the input coordinates as being the coordinates of vertices, and interpolates between four vertices to get the face color displayed. Because of this, for an N x M array of input data, surf() will only draw (N-1) x (M-1) faces and the faces will not directly represent the input data.
See Also
Categories
Find more on Annotations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!