Count curves on Matlab plot with specific name

24 views (last 30 days)
Is there a way to count how many curves are on a specific Matlab Figure? I define the name of plot as
figure('Name','Simulation', 'NumberTitle', 'Off')
Since I have multiple plots generated at various times I am unable to use gcf. What I would like to do is something like
length(findall('type','line','Name','Simulation')
to find all curves associated with the plot (or plots) named Simulation.
  3 Comments
Tyler Murray
Tyler Murray on 18 Jan 2017
Thanks for the reply Adam sorry I wasn't clear. Basically I can plot the same thing over and over with different data and generate multiple figures. When I generate these figures they all have the same name since they are all generated from the same line of code ...
figure('Name','Simulation', 'NumberTitle', 'Off')
I am able to determine how many figures with the same name (in this case the name is Simulation) by using the following line
simulation_handles = findall(0, 'Name', 'Simulation');
n_simulation = length(simulation_handles);
Fo each of the figures titled Simulation, I need to know how many curves are plotted on each one.
Tyler Murray
Tyler Murray on 18 Jan 2017
I saw the one suggestions of using
length(findall(gca,'type','line'))
but as I said earlier I need to use that on all figures using one axis not necessarily the current axis.

Sign in to comment.

Accepted Answer

Greg Dionne
Greg Dionne on 18 Jan 2017
You can try
hFigure = findall(0,'type','figure','name','Simulation')
That should give you the handle to all figures with the name Simulation. you can then do:
hLines = findall(hFigure,'type','line')
which should give you all the lines.
If you don't like decorating your figures with unique names, you can also use the 'tag' property on your lines, axes, whatever and search for that. Nothing user-visible, just something you can use to search against.

More Answers (0)

Categories

Find more on Graphics Objects in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!