小编Nat*_* B.的帖子

MATLAB同时在单独的子图中绘制移动数据点

我想在MATLAB中的一段时间内可视化数据点在整个空间中的移动.但是,我希望我的图形显示的方式是在任何给定时间只绘制一个瞬间.这很简单,我只是创建了一个for循环来更新我的数据中每组坐标(x,y,z)的3D绘图显示.但是,我希望始终显示该图的4个不同视角.我很清楚如何在MATLAB中设置子图,这不是问题.我的问题是让所有这四个子图同时执行,这样所有4个子图总是显示相同的时间点.

如果有人能建议如何处理这个问题,我将不胜感激.

根据要求,我的具有单个图的图的代码如下所示:

datan = DATA; %data in form of x,y,z,a,b,c by column for row# of time points

tib=zeros(size(datan,1),12);
tib(:,1:3) = datan(:,1:3);
tib_ref=tib(1,1:3);

for i=1:size(datan,1)
tib(i,1:3)=tib(i,1:3)-tib_ref;
end

angle_to_dircos

close all

figure('Name','Directions (Individual Cycles)','NumberTitle','off')

for cc=1:2
    hold off
    for bb=1:10:size(tib,1);
    scatter3(tib(bb,1),tib(bb,2),tib(bb,3),'green','filled'); %z and y axes are flipped in polhemus system
    hold on
       p0 = [tib(bb,1),tib(bb,2),tib(bb,3)]; 
       p1 = [tib(bb,1)+10*tib(bb,4),tib(bb,2)+10*tib(bb,5),tib(bb,3)+10*tib(bb,6)]; 
       p2 = [tib(bb,1)+10*tib(bb,7),tib(bb,2)+10*tib(bb,8),tib(bb,3)+10*tib(bb,9)];
       p3 = [-(tib(bb,1)+100*tib(bb,10)),-(tib(bb,2)+100*tib(bb,11)),-(tib(bb,3)+100*tib(bb,12))];      
       vectarrow(p0,p1,1,0,0)
       hold on
       vectarrow(p0,p2,0,1,0)
       hold on
       vectarrow(p0,p3,0,0,1)
       hold on
    az = 90;
    el = 0;
    view(az, el); …
Run Code Online (Sandbox Code Playgroud)

matlab plot simultaneous

5
推荐指数
1
解决办法
2676
查看次数

标签 统计

matlab ×1

plot ×1

simultaneous ×1