我是靠谱客的博主 超级宝贝,最近开发中收集的这篇文章主要介绍matlab中drawnow函数,实现动图matlab中drawnow,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

matlab中drawnow

  • 功能:更新数据并处理回调
  • 函数:drawnow 、 drawnow limitrate、   drawnow nocallbacks   、drawnow limitrate nocallbacks 、drawnow update   、drawnow expose

     

  • 介绍
    • Drawnow更新数据并处理所有未决的回调。 如果您修改图形对象并希望立即在屏幕上查看更新,请使用此命令。

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      创建一条累积2000个数据点的直线动画。 遍历循环后,使用drawow在屏幕上显示更改。

      h = animatedline;  %创建一根没有任何数据的动画线条并将其添加到当前坐标区中。通过使用 addpoints 函数循环向线条中添加点来创建动画。

      axis([0 4*pi -1 1])

      x = linspace(0,4*pi,2000);

       

      for k = 1:length(x)

          y = sin(x(k));

          addpoints(h,x(k),y);   %add the (x(k),y) to the h

          drawnow

      end

        

    • drawow limitrate将更新次数限制为每秒20帧。 如果自上次更新以来不到50毫秒,或者图形渲染器忙于上一次更改,则drawow丢弃新更新。 如果要循环更新图形对象,并且不需要在屏幕上看到每个更新,请使用此命令。 跳过更新可以创建更快的动画。 处理待处理的回调,因此您可以在动画期间与图形进行交互。

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      %创建一条累积了10,000点的直线动画。 由于有10,000点,因此在屏幕上绘制每个更新速度很慢。<br>% 通过使用drawow limitrate限制更新次数来创建更快,更流畅的动画。 然后,在循环结束后,通过调用drawow在屏幕上显示最终更新。

      h = animatedline;

      axis([0 4*pi -1 1])

      x = linspace(0,4*pi,10000);

       

      for k = 1:length(x)

          y = sin(x(k));

          addpoints(h,x(k),y);

          drawnow limitrate

      end

      drawnow

        

      1

      2

      3

      4

      5

      6

      7

      8

      9

      10

      11

      %先画好图,在动态显示

      h = animatedline;

      axis([0 4*pi -1 1])

      x = linspace(0,4*pi,10000);

      y = sin(x);

       

      for k = 1:length(x)

          addpoints(h,x(k),y(k));

          drawnow limitrate

      end

      drawnow

        

最后

以上就是超级宝贝为你收集整理的matlab中drawnow函数,实现动图matlab中drawnow的全部内容,希望文章能够帮你解决matlab中drawnow函数,实现动图matlab中drawnow所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(32)

评论列表共有 0 条评论

立即
投稿
返回
顶部