contour lines on the surface plot

48 ビュー (過去 30 日間)
Masa
Masa 2022 年 2 月 6 日
回答済み: Masa 2022 年 2 月 7 日
How to plot a surface with its contour lines drawn on it?
this image is an example of what I mean:

採用された回答

Star Strider
Star Strider 2022 年 2 月 6 日
Try something like this —
[X,Y,Z] = peaks(50); % Example Surface
figure
surf(X,Y,Z, 'EdgeColor','none') % Surface Plot
hold on
contour3(X,Y,Z,10, '-k', 'LineWidth',1.5) % Add Contours
hold off
grid on
colormap('jet')
shading('interp')
view(30,45)
See the documentation on surf and contour3 for details.
Make appropriate changes to get the desired result.
.

その他の回答 (1 件)

Masa
Masa 2022 年 2 月 7 日
for those who need the same plot but with discrete colors (corresponding to the levels of the contour plot):
% surface data to plot
[X,Y,Z] = peaks(50);
% plot surface
surf(X,Y,Z);
shading('interp');
hold on;
% plot contours
contourLevelsNum = 9;
contour3(X,Y,Z,contourLevelsNum,'k');
hold off;
colormap(jet(contourLevelsNum+1));
cb = colorbar;
% correct position of ticks in the color bar
[zDataMin, zDataMax] = bounds(Z(:));
caxis([zDataMin,zDataMax]);
set(cb,'Ticks',linspace(zDataMin,zDataMax,contourLevelsNum+2));
view(30,45);

カテゴリ

Help Center および File ExchangeLighting, Transparency, and Shading についてさらに検索

製品


リリース

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by