Holding legend with multiple plots

I am using app designer and I have a plot that takes input from the interface then plots it. each time I am plotting, I'm holding the uiaxis on to keep previous plots. however I am not able to get the legend to update and maintain previous components. is it possible to do it?

2 Comments

why dont you write legend command after plotting all the plots?
it's not predetermined I am exploring multiple variations of weights for my model then plotting them in the app

Sign in to comment.

Answers (2)

Suhas Maddi
Suhas Maddi on 18 Jun 2020
Hii,
I think You are trying to store the legend values for each iteration and add new values to that legend.
There are two ways to do so :
  1. Use a cell array of character vectors or string array or categorical array and append your new legend values to this cell array and plot the legend for every iteration.
  2. You can use legappend function as mentioned here: https://blogs.mathworks.com/pick/2014/07/25/append-entries-to-a-legend/
Hope this helps you.

2 Comments

how would you go about creating the array and appending it to include new plots?
legappend didn't work for me as matlab didn't recognize it
You would need to install legappend from https://www.mathworks.com/matlabcentral/fileexchange/47228-legappend or from the Add-On Explorer.

Sign in to comment.

Hii ma sd,You can do something like this :
>>X=1:10;
>>Y=5:5:50;
>>Z=10:10:100;
>>labels={};
>>plot(X,Y);
>>labels{end+1}='label1';
>>legend(labels);
>>hold on
>>plot(X,Z);
>>labels{end+1}='label2';
>>legend(labels);
>>hold off
I am attaching the results too.
I hope this helps you.

Products

Release

R2020a

Asked:

on 14 Jun 2020

Commented:

on 22 Jun 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!