Matlab 批量画图:飞行轨迹数据

function n = draw_track(Total,f_name)

% 开一个新的画图窗口
figure;

% 求得轨迹的数量
n = length(Total);

% 取出每条轨迹的三维坐标点
for i = 1:length(Total)
    
    name_track = Total(i).flight;
    
    tmp_track = Total(i).track;
    
    % x、y、z必须转换为矩阵才能作为参数,cell型不能画
    x = cell2mat(tmp_track(:,1));
    
    y = cell2mat(tmp_track(:,2));
    
    z = cell2mat(tmp_track(:,3));
    
    % 画三维物体要用plot3
    plot3(x,y,z)
    
    hold on
end
% save(['mat数据\',temp{1,1}],'Total');
% save(gcf,'save.jpg')
% hold off


% 需要进行字符串剥离
temp = split(f_name,'.');
name =  sprintf('%s.png',temp{1,1});
saveas(gcf,name);

end

传入参数Total为轨迹点的集合,用者可以自由设定,f_name是传入文件的名称,用来批量更改画出图像的名称,可自由设定。


版权声明:本文为lzw369639原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。