如何停止Matlab plot3比例尺

时间:2018-11-23 16:41:04

标签: matlab plot matlab-figure

我想使用plot3函数绘制摆锤(改变位置)。不幸的是,当我的点在循环中改变位置并再次绘制时,3d图的比例也在改变,因此x轴取决于位置的变化(取决于点的位置,它可以从-1到-1.5或从-1至-3)和y也改变。只有z表示相同。结果是点跳到图形上而不会产生摆的印象。这是我的情节:

plot3(0,0,0);
daspect([1,1,1]);
axis([-10, 10, -10, 10]);
scatter3(x(i)-rs, y(i)-rs, 0);

我尝试使用以下方法解决该问题:

gca

set(fig, 'PaperPositionMode', 'auto');

但两者都无济于事。我也无法旋转图形,因为它正在被绘制并返回到先前的位置。

2 个答案:

答案 0 :(得分:0)

尝试在绘制之前设置XLimYLimZLim属性。例如,

xlim=[-1 1];

haxe = gca;
haxe.XLim = [-1 1];

此外,您可以将XLimModeYLimModeZLimMode属性设置为manual。例如,

haxe.XLimMode = 'manual'

有关轴属性的更多信息,请参见axis properties的MATLAB文档。

答案 1 :(得分:0)

这里是2D的简短示例,您也可以轻松地将其应用于3D:

$key = array_search ('your param', $arr);

此处的关键是在循环之前设置N = 50; x = [1:N;N:-1:1]; x = repmat(x,2,1).'; p = plot(x(1),1,'ob','MarkerFaceColor','b'); xlim([0 51]) for k = 2:numel(x) p.XData = x(k); drawnow end ,然后仅更新绘图中的相关数据(在这种情况下使用xlim)。