Use the variable of function for title of a figure

4 visualizaciones (últimos 30 días)
Simon Rinn
Simon Rinn el 14 de Sept. de 2020
Comentada: Image Analyst el 14 de Sept. de 2020
Hi,
I want to use the variable of my function which is a structure as the title of a figure. For example I do :
a = fullplot ( name_struc)
%The function is defined as :
function [] = fullplot(struc)
e = struc.xaxis
s = struc.yaxis
plot(e,s)
title ( ' XXX ' )
end
Instead of the 'XXX' i want to put 'name_struc'.
I tried with inputname(1) but this return 'struc' and not 'name_struc' .
Can someone help me please ?
Thank you

Respuesta aceptada

Image Analyst
Image Analyst el 14 de Sept. de 2020
Editada: Image Analyst el 14 de Sept. de 2020
This seems to work fine:
name_struc.xaxis = 1:20;
name_struc.yaxis = rand(1, 20);
a = fullplot ( name_struc)
%The function is defined as :
function a = fullplot(struc)
e = struc.xaxis
s = struc.yaxis
plot(e,s)
title (inputname(1), 'Interpreter', 'none', 'FontSize', 20)
a=1; % Some output.
end
You see, it has a title of name_struc, not struc.
  2 comentarios
Simon Rinn
Simon Rinn el 14 de Sept. de 2020
Yes you are right the mistake come from me.
Thank you very much for this very quick answer.
Image Analyst
Image Analyst el 14 de Sept. de 2020
No problem. Thanks for Accepting.

Iniciar sesión para comentar.

Más respuestas (1)

Fangjun Jiang
Fangjun Jiang el 14 de Sept. de 2020
Are you sure? put inputname(1) inside the function. It should show name as "MyStruct" if you call it with fullplot(MyStruct)

Community Treasure Hunt

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

Start Hunting!

Translated by