add a number to the legend
15 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi,
I want to add a legend to the plot so that each time the button in GUI is pressed the legend will show a string with corresponding number.
I want to work it like this:
First plot: Sandwich panel(1), second plot: Sandwich panel(2), etc...
My current code:
semilogx(f,TL,'DisplayName','Sandwich panel');
grid on
ylabel('Transmission Loss [dB]');
xlabel ('Frequency')
xlim([80 10000])
title('Transmission Loss')
legend('-DynamicLegend','location','best')
hold all
Thanks,
Dominika
0 comentarios
Respuestas (2)
Sara
el 20 de Mayo de 2014
legend(['Sandwich panel(',num2str(put_number_here),')'])
or you could use sprintf.
2 comentarios
Sara
el 20 de Mayo de 2014
Dominika, do you mean you need a way to count how many times the button has been pressed? In that case, you'll have to create a variable that is incremented any time you press the button, set it to zero in the opening_funct of the gui, and increment it in the pushbutton callback. Make sure to have:
guidata(hObject, handles);
at the end of the callback. Does this help?
David Sanchez
el 20 de Mayo de 2014
Continuing with Sara's comment:
In your callback function,
N_pushes = N_pushes + 1;
my_str = sprintf('Sandwich panel %g',N_pushes);
legend(my_str);
5 comentarios
Sara
el 21 de Mayo de 2014
Do you have the instruction
guidata(hObject, handles);
at the end of EACH callback, including the opening function? Otherwise the variables you add to handles are not saved.
Ver también
Categorías
Más información sobre Legend en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!