怎么把这个MATLAB程序的动态图形保存为gif啊,求助!

怎么把这个MATLAB程序的动态图形保存为gif啊,求助!,第1张

clear

clc

%飞机追踪潜艇航线图

t=linspace(0,1,2000); flag=0;

p=zeros(2000,2);q=ones(2000,2);a=zeros(8,2);b=zeros(8,2);

a(:,1)=0;a(1,2)=6;b(1,2)=0;b(1,1)=pi/2;

for i=1:2000

    theta=sqrt(3)log(10t(i)+1);

    p(i,1)=2exp(sqrt(3)/3theta); p(i,2)=theta;%飞机的极坐标

    q(i,1)=2+20t(i); q(i,2)=pi/2;%潜艇的极坐标

    if abs(p(i,1)-q(i,1))<001&&abs(p(i,2)-q(i,2))<001%判断飞机是否已经找到潜艇

        flag=1;

        break;

    end

end    

if flag==1%判断飞机是否找到潜艇

    disp('已经找到该轨迹!');

    h = polar([0 2pi], [-6 0],'k');

    text(2,0,'(2,0)');text(6,0,'A(6,0)');

    text(0,2,'(0,2)');text(0,0,'(0,0)');

    title('飞机追踪潜艇轨迹图');

    hold on;

    n=1;

    im=frame2im(getframe);

    [imind,cm]=rgb2ind(im,256);

    imwrite(imind,cm,'追踪轨迹图GIF','gif','Loopcount',inf,'DelayTime',01);

    

    for j=2:i

        a(j,2)=a(j-1,2)-4/i;b(j,2)=b(j-1,2)+2/i;b(j,1)=pi/2;

    end

    for j=1:i

        polar(a(j,1),a(j,2),'r');

        polar(b(j,1),b(j,2),'b');        

        for k=1:8

            if j==fix(ki/8)

                n=n+1;

                im=frame2im(getframe);

                [imind,cm]=rgb2ind(im,256);

                imwrite(imind,cm,'追踪轨迹图GIF','gif','WriteMode','append','DelayTime',01); 

            end

        end

    end

    

    for j=1:i

        polar(p(j,2),p(j,1),'r');

        polar(q(j,2),q(j,1),'b');

        for k=1:8

            if j==fix(ki/8)

                n=n+1;

                im=frame2im(getframe);

                [imind,cm]=rgb2ind(im,256);

                imwrite(imind,cm,'追踪轨迹图GIF','gif','WriteMode','append','DelayTime',01); 

            end

        end

    end

else

    disp('无解');

end

= 0:02:22 [];

Y = [01 08 23 31 12 24 56 02 -23 18 -17 -4];

N = 1;

当m = 1 :长度(Y)

如果ABS(Y(M))> = 2

X1(N)= X(米);

Y1(N)= Y(M) N = N +1;

年底结束

图(X,Y,X1,Y1,'')

可以先定义一个向量

vector = [];

for i = 1:50

A=path(i,:);

A=A(A>0);

vector = horzcat(vector,A);

end

clear path; %清除原来的变量

%影片生成例子: 旋转一个三维表面绘图

[X, Y, Z]=peaks(50); %创建山峰图形数据

surfl(X, Y, Z) %绘制带光照的表面

axis([-10 10 -10 10 -10 10]) %限制绘图范围

axis vis3d off %三维坐标修正,关闭坐标轴箭头

axis equal %等比例显示三维坐标

shading interp %加个影子美化

colormap(copper) %着色为铜色

movie(m) %把刚才存到m里的图像连续播放一遍

MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中。

MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

以上就是关于怎么把这个MATLAB程序的动态图形保存为gif啊,求助!全部的内容,包括:怎么把这个MATLAB程序的动态图形保存为gif啊,求助!、matlab中怎样根据已经画出来的动态图,在数值大于某个值时及时d出警告窗口、如何用MATLAB 实现数据的动态存储等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9689088.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存