Automatically changing title based on a function input variables names

3 views (last 30 days)
I made a function that creates a histogram.I want every time i call the function for an input variable 'X' ,the title and the xlabel to change automatically.
For exaple:
  • when i i call the function [HISTOGRAM]=hist(apples),then my title should be 'HISTOGRAM apples'
  • when i i call the function [HISTOGRAM]=hist(lemons),then my title should be 'HISTOGRAM lemons
The same for xlabel.
Is this possible?
below is the code i have already written.
function [HISTOGRAM]=hist(X)
HISTOGRAM=histogram(X)
title('HISTOGRAM (VARIABLE NAME)')
xlabel('(VARIABLE NAME)')
ylabel('Number of sequence reads')
end

Accepted Answer

Voss
Voss on 30 Apr 2022
You could add a second input argument to your function (and don't call your function hist because that's already taken by a built-in MATLAB function):
my_hist(randn(100),'jackfruit');
function [HISTOGRAM]=my_hist(X,var_name)
HISTOGRAM=histogram(X);
title(sprintf('HISTOGRAM (%s)',var_name))
xlabel(sprintf('(%s)',var_name))
ylabel('Number of sequence reads')
end

More Answers (0)

Community Treasure Hunt

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

Start Hunting!