如何在给定Y值的情况下找到X值并在绘图上显示该点

  • 本文关键字:绘图 显示 情况下 matlab
  • 更新时间 :
  • 英文 :


我试图在使用以下matlab函数生成的图中找到一个值。我试过使用这个z=find(y==0.0625);但它似乎不工作。

function con = funcCon (cMax)
% Time when the max concentration happens.
B = 3;
% mg to administer. 
A = (cMax / B) * exp(1);
% Time.
t = [1:50];
y(1,1) = 0;
for i = 2:50
con = A*t(1,i)*exp(-t(1,i)/B);
y(1,i) = con;
end 
plot(t,y)
end

由于您将t离散到1:50的网格上,因此您只能从该网格中的t中获得y最接近0.0625的值。

[smallest_differance approx_t]=min(abs(y-0.0625) ); 

但是如果你想要一个更精确的解你可以把y写成t的函数:

y = @(t) abs ( A*t.*exp(-t./B)-0.0625);
t_solved = fminbnd(y,1,50)

最新更新