Using scatter3 in conjunction with setting axis limits draws at wrong coordinates

2 views (last 30 days)
I try to plot a point at a specific 3d coordinate. But if I use set(gca, 'XLim' or 'YLim' or 'ZLim',...), the point is plotted at a wrong position in the 3D graph. Below, I put the code without set(gca ...) together with the plotted result. Then, I add code using set(gca ...) with the result.
close all
figure
p0 = [0 0 0];
p1 = [0 0 0];
plot3(p0,p1,p1)
grid
xlabel('x')
ylabel('y')
zlabel('z')
hold on
x = 1
y = 3
z = 9
scatter3(x,y,z)
%plot3(x,y,z,'*')
close all
figure
p0 = [0 0 0];
p1 = [0 0 0];
plot3(p0,p1,p1)
grid
xlabel('x')
ylabel('y')
zlabel('z')
lim = [0 10];
tick = (0:1:10);
set(gca,'XLim',lim)
set(gca,'XTick',tick)
set(gca,'YLim',lim)
set(gca,'YTick',tick)
set(gca,'ZLim',lim)
set(gca,'ZTick',tick)
hold on
x = 1
y = 3
z = 9
scatter3(x,y,z)
%plot3(x,y,z,'*')
Using plot3 instead of scatter gives the same results.

Accepted Answer

Navya Seelam
Navya Seelam on 6 Dec 2019
Hi,
The point is being plotted at right position. Try rotating the plot to make sure the point is at right position

More Answers (0)

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!