我正在运行一个for循环,目前使用3个不同矩阵(代表x,y和z)的第1列的k(surf
)为21 x 602维度绘制for k=1:301
图。然而,同时我想冲浪情节列for 302:k+301
,所以从本质上讲,我同时获得了两个磁通管的动画。
目前,我有:
p = surf(nan(21,602), nan(21,602), nan(21,602));
for k = 1:301
% Update all of the plot objects at once
set(p, 'XData', x(:, 1:k), ...
'YData', y(:, 1:k), ...
'ZData', z(:, 1:k),'facecolor', Colour, 'edgecolor',EdgeColour,...
'facelighting','gouraud')
drawnow
end
但显然,这只是绘制当前正在编写的第一个动画。如何调整以同时绘制所需的其他列(以及其他动画)?
由于
答案 0 :(得分:0)
这个怎么样:
p1 = surf([0 0 ;0 0]);
hold all
p2 = surf([0 0 ;0 0]);
for k = 1:301
% Update all of the plot objects at once
set(p1, 'XData', x(:,1:k), ...
'YData', y(:,1:k), ...
'ZData', z(:,1:k),'facecolor', Colour, 'edgecolor',EdgeColour,...
'facelighting','gouraud')
set(p2, 'XData', a(:,1:k), ...
'YData', b(:,1:k), ...
'ZData', c(:,1:k),'facecolor', Colour, 'edgecolor',EdgeColour,...
'facelighting','gouraud')
drawnow
end
hold off
x,y,z
是一个螺旋的数据,a,b,c
是另一个螺旋的数据。
您需要创建两个不同的轴(p1
和p2
),以便surf
完全连接数据
希望它能回答这个问题:)