how to plot a function handle on matlab 7 ?

my code is i'm asking the user to input a funtion and i transform it to a handle one (note that i'm using the matlab 7.0 R14) :
funstr = input('• Please enter your function here : ', 's');
f = eval( ['@(x) ' funstr ] );
how can i possibly do the plot of this between the two points a and b? i keep getting errors
??? Index exceeds matrix dimensions
or
??? Error using ==> plot Conversion to double from function_handle is not possible.
i tried it with plot and fplot and none of them is working !
thanks for helping in advance.

 Akzeptierte Antwort

Star Strider
Star Strider am 20 Apr. 2018

3 Stimmen

You need to evaluate the function in the plot call.

Example

fun = @(x) x.^3 - 8*x.^2 + 10;
x = linspace(-5, 5);
figure
plot(x, fun(x))
grid

6 Kommentare

first of all thanks for your quick answer, i tried it but it keeps giving me this error : ??? Error using ==> plot

 Conversion to double from function_handle is not possible.
 Error in ==> SimpsonComposee at 136
      plot(x, f)

My pleasure.

I have no idea what ‘f’ is. If it is a function of one variable, try this:

plot(x, f(x))

It is now no longer a function handle, but a function evaluation.

thanks man it worked, also i have another question if possible :

      ax = gca;
      ax.XAxisLocation = 'origin';
      ax.YAxisLocation = 'origin';

this is to Set the y-axis so it passes through the origin of the x-axis (x = 0). but it's not working for me in matlab 7 what's wrong ?

Star Strider
Star Strider am 20 Apr. 2018

As always, my pleasure.

I believe it was introduced in R2016b.

There are other options that will work in previous versions, the most popular being axescenter (link). A full File Exchange search for similar functions is here (link).

HeadingUpHigh
HeadingUpHigh am 21 Apr. 2018
thanks mate, you've been very helpful.
Star Strider
Star Strider am 21 Apr. 2018
As always, my pleasure.
The File Exchange has several functions that add necessary capabilities missing in earlier MATLAB versions. (Many of these have been incorporated in MATLAB and the Toolboxes since.)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Programming finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by