3D plot view changing in loop
Show older comments
I'm using a subplot to plot 6 3D figures using a loop. I set view(3) in my code and this works for the first figure but as the other figures come, they all tend to look more 2-D. This doesn't happen if I use a function to call all 6 individually but that isn't possible for my code. Another thing is that the figures all look as they should if I maximise the plot window. 

function plot_fig123(n,X,Y,header)
load('terrain.mat')
subplot(2,3,n)
h = interp2(x_terrain,y_terrain,h_terrain,X,Y);
hold on;
plot3(X,Y,h,'ko','MarkerFaceColor','k','MarkerEdgeColor','k','MarkerSize',1);
plot3(X(end),Y(end),h(end),'ro',MarkerFaceColor='r')
surf(x_terrain, y_terrain, h_terrain);
colormap('jet'); shading interp;
title(header)
grid on; xlabel('x (m)'); ylabel('y (m)'); zlabel('z (m)');
view(3);
set(gca, 'LineWidth', 2, 'FontSize', 10, ...
'Xtick',-150:50:150, 'Ytick', -150:50:100, 'Ztick',-200:50:0)
end
6 Comments
VBBV
on 31 May 2022
subplot(3,2,n) % chage the layout of subplot
view([90 0]);%try with view angle or previous value view(3)
AGASTHYA VALLURI
on 31 May 2022
AndresVar
on 31 May 2022
@AGASTHYA VALLURI does it look normal if you just make the figure bigger?
AGASTHYA VALLURI
on 31 May 2022
Anton Kogios
on 14 Oct 2023
Can you please provide your terrain.mat file? And the code that calls your function too if possible. It's hard for people to help if we can't run your code ourselves...
Answers (0)
Categories
Find more on Axes Appearance 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!