Use the variable of function for title of a figure

1 visualizzazione (ultimi 30 giorni)
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

Risposta accettata

Image Analyst
Image Analyst il 14 Set 2020
Modificato: Image Analyst il 14 Set 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 Commenti
Simon Rinn
Simon Rinn il 14 Set 2020
Yes you are right the mistake come from me.
Thank you very much for this very quick answer.

Accedi per commentare.

Più risposte (1)

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

Categorie

Scopri di più su Function Handles in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by