already know function: find x value given y AND plot (x,y) on the same graph

2 views (last 30 days)
Can someone help me with this simple question? I already know the function expression. I would like to find the x value corresponding to y=0.37 and plot the point (x,y) with dash lines connecting to x/y axis in the same graph on top of the line for y?
Here is my current code:
x = 0:100000;
y = exp(-x/38190.7);
figure
semilogy(x,y)
grid on
Thank you!

Accepted Answer

Star Strider
Star Strider on 6 Feb 2016
This works:
x = 0:100000;
ofst = 0.37;
y = @(x) exp(-x/38190.7); % Create Anonymous Function
xval = fzero(@(x) y(x)-ofst, 1) % Solve For ‘ofst’ Value
figure(1)
plot(x, y(x))
hold on
plot([xval xval], [0 ofst], '--')
plot([0 xval], [ofst ofst], '--')
plot(xval, ofst, 'bp')
hold off
grid
  5 Comments
Kalyan Dash
Kalyan Dash on 6 Feb 2018
The code works fine. Can you please elaborate the code
plot([xval xval], [min(ylim) ofst], '--')
plot([0 xval], [ofst ofst], '--')
plot(xval, ofst, 'bp')
Star Strider
Star Strider on 6 Feb 2018
MATLAB requires two values for the x and two values for y in order to plot the line. It will plot a constant line at a given x or y if both values of either the x or y coordinates are the same value.

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!