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

3 vues (au cours des 30 derniers jours)
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!

Réponse acceptée

Star Strider
Star Strider le 6 Fév 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 commentaires
Kalyan Dash
Kalyan Dash le 6 Fév 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 le 6 Fév 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.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Specifying Target for Graphics Output dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by