Contour plot on a surface plot

14 views (last 30 days)
Tomas Altea on 19 Nov 2021
Answered: KSSV on 22 Nov 2021
Hi everyone,
I have imported a 2D surface comsol matrix data in a three-column format (x-coordinate, y-coordinate and color data) and I've plotted it using this code:
x = A(:,1);
y = A(:,2);
z = A(:,3);
tri = delaunay(x,y);
figure
h = trisurf(tri,x,y,z,'EdgeColor','none');
axis vis3d
view(0,90)
colormap turbo
a = colorbar('eastoutside');
Now I would like to insert a contour plot, also imported from a comsol data matrix in the same format, above the surface plot. I have tried several ways but haven't gotten good results. Can someone help me? Thanks in advance
Tomas Altea on 22 Nov 2021
I've attached it now, sorry for the wait

KSSV on 22 Nov 2021
x = A(:,1);
y = A(:,2);
z = A(:,3);
%
xg = linspace(min(x),max(x),1000) ;
yg = linspace(min(y),max(y),1000) ;
[X,Y] = meshgrid(xg,yg) ;
Z = griddata(x,y,z,X,Y) ;
figure(1)
pcolor(X,Y,Z)
figure(2)
contour(X,Y,Z)
figure(3)
contourf(X,Y,Z)
figure(4)
surf(X,Y,Z)
If you want to use contour on unstructured grid without converting it into a structured grid, you can use:

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!