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

2 Ansichten (letzte 30 Tage)
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!

Akzeptierte Antwort

Star Strider
Star Strider am 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 Kommentare
Kalyan Dash
Kalyan Dash am 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 am 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Help 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