如何删除现有图表并绘制新图表?

时间:2016-10-20 09:36:00

标签: matlab matlab-figure

在我的程序中,我正在进行最小二乘的优化问题,即\sum_{i} (y_{i}-y_{i}^{market})^2。与此同时,我想将y_{i}y_{i}^{market}进行对比。为了根据我的需要对其进行编程,我在优化过程中定义OutputFcn并编写如下代码:(假设x代表x-coord

figure()
hold on
plot(x,[y_{1},y_{2},...,y_{n}]);
plot(x,[y_{1}^{market},y_{2}^{market},...,y_{n}^{market}]);

当我运行程序时,我可以在同一个绘图上绘制新的计算曲线。不幸的是,最终的情节很难看出来。为了使其可见,我想删除在前一次迭代中获得的曲线(计算值),并在现有图上的新迭代中绘制新曲线(计算值)。我应该如何处理当前的代码以满足我的需求?

1 个答案:

答案 0 :(得分:2)

类似的东西:

hold on
for iterations
    clf
    % PLOT STUFF
    drawnow
    pause(0.1)
end
  • clf清除数字
  • drawnow强制在屏幕上绘图
  • pause停止执行一段时间,以便您有时间看到它。