input function as plot title?

6 views (last 30 days)
Emmalie Foti
Emmalie Foti on 23 Apr 2020
Answered: Johannes Hougaard on 23 Apr 2020
im creating a function that plots a user input function. i want the title to be just the function entered, but when i run the code, it displays the whole long vector that the function outputs.
fh=input('Enter a function: ');
minimum=min(fh)
maximum=max(fh)
plot(x,fh)
axis([a b floor(minimum) ceil(maximum)])
title(sprintf('%s',fh))
for example, if i input x^2 as the function, the graph would use 0 4 9 16 etc. as the title rather than just x^2.

Accepted Answer

madhan ravi
madhan ravi on 23 Apr 2020
doc str2func

More Answers (1)

Johannes Hougaard
Johannes Hougaard on 23 Apr 2020
I think this would do it
function_name = input('Enter a function:','s');
fh = str2func(strcat('@(x)',function_name));
fplot(fh,[min(x) max(x)]);
title(sprintf('%s',strrep(function_name,'.','')))

Community Treasure Hunt

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

Start Hunting!