如何在matlab中绘制不同颜色的曲线(数量可能会有所变化)?

时间:2016-10-15 11:45:39

标签: matlab

我希望有人可以帮我解决以下编码问题。

当我进行优化时,这是最小平方最小化:Sum(y(modeled)-y(True))^2,我想在进行优化时在每次迭代后绘制图形。对于图表,我想在一个图中绘制如下:

  1. TRUE y(蓝线)
  2. 在每次迭代中计算的模型y。在每次迭代中获得的模型y应该是不同的颜色,不要使用相同的颜色
  3. 但是,我很难知道程序可以执行的迭代次数,可能是简单函数的几次迭代,或复杂函数的大量迭代。

    如何在matlab中编写相应的代码?

    我搜索过我可以使用PlotFcn来帮助我绘制图表。但我认为没有用,因为图表默认不绘制我想要的图形,这迫使我自己编写代码。我改用OutputFcn。如果可以使用PlotFcn执行相同的任务,请告诉我们。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

You can do:

plot(trueY,'b');
hold on;
while(~finished)
   %....generate a modeledY
    plot(modeledY, 'Color', random(1,3));
   %....determine if finished 
end

This doesn't let you control the color that you'll have, but it lets you do as many as you want. If you want to control the color, check this out.