如何在MATLAB中绘制内部while循环?

如何在MATLAB中绘制内部while循环?,matlab,plot,Matlab,Plot,在while循环中,我有一些函数,可以为我想要绘制的图创建所有必需的y值。在所有y值完成后,我希望我的程序绘制dat(仍在循环内),但无法绘制,因为直到循环结束数据才会出来。 有什么办法可以这样做吗 基本上,我的代码是(我只想在这里介绍第一个案例) 正如我所说;我在循环结束时取出所有数据,这些数据存储在工作区中。这意味着,当我再次运行它时,它工作正常。 但是我想知道如何让它第一次工作。 对于连续测线图,您可以使用drawnow,并说明了如何执行此操作(如果您想“实时”可视化更改,请记住使用pau

在while循环中,我有一些函数,可以为我想要绘制的图创建所有必需的y值。在所有y值完成后,我希望我的程序绘制dat(仍在循环内),但无法绘制,因为直到循环结束数据才会出来。 有什么办法可以这样做吗

基本上,我的代码是(我只想在这里介绍第一个案例)

正如我所说;我在循环结束时取出所有数据,这些数据存储在工作区中。这意味着,当我再次运行它时,它工作正常。 但是我想知道如何让它第一次工作。

  • 对于连续测线图,您可以使用
    drawnow
    ,并说明了如何执行此操作(如果您想“实时”可视化更改,请记住使用
    pause(.)
  • 要在添加新绘图时保留当前绘图,请按说明使用
    按住
  • 如果要为每个不同的绘图打开不同的窗口,可以使用以下方法:

    ii=1;
    虽然
    ...
    图(二)
    绘图(x,y)
    ii=ii+1;
    ...
    结束


但是要小心最后一个:如果你有大量的绘图,你可能会遇到一些问题。

好吧,它完全停止了绘制altogheter,但在我重置matlab后第一次尝试时就开始绘制。我不知道发生了什么。
等等
drawnow
是你的朋友吗
while c~=3
    c=menu('a','b','c')
    switch c
          case 1
             for 
                %function that creates y-values
             end
          plot(x,y)
     end
end