Contour in a 3D surface plot
6 views (last 30 days)
Show older comments
I am trying to creat a 3D surface plot with the contour of the surface projected on the top face (XY plane in Z = max)
Following is the code used:
f = figure('PaperSize',[8 8]);
Z = table2array(Table);
Z = Z(:,2:N+1);
Y = Table.Wavenumber_cm_1_;
X = [1:N];
SurfacePlot = surf(X,Y,Z);
ylabel('Wavenumber[cm^-1]');
xlabel('Aliquot Number');
zlabel('Absorbance[a.u.]');
colormap jet
shading interp
grid off;
hold on
contourf(X,Y,Z);
hold off
The problem is that the contour is created on XY plate (under the surface plot). How can move the contour up to the top surface?
Thank you.
0 Comments
Accepted Answer
Ameer Hamza
on 31 May 2020
Edited: Ameer Hamza
on 31 May 2020
contour() object have an undocumented property named ContourZLevel: https://stackoverflow.com/a/8055468/4346708. For example,
[X,Y] = meshgrid(1:0.1:10,1:0.1:20);
Z = sin(X) + cos(Y);
ax = axes();
hold on
view(3);
s1 = surf(X,Y,Z);
[~, s2] = contourf(X,Y,Z);
s2.ContourZLevel = 5;
More Answers (0)
See Also
Categories
Find more on Surface and Mesh Plots 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!