我想使用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');
但两者都无济于事。我也无法旋转图形,因为它正在被绘制并返回到先前的位置。
答案 0 :(得分:0)
尝试在绘制之前设置XLim
,YLim
和ZLim
属性。例如,
xlim=[-1 1];
或
haxe = gca;
haxe.XLim = [-1 1];
此外,您可以将XLimMode
,YLimMode
和ZLimMode
属性设置为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
)。