Identifying x value at y on an xy plot
Show older comments
I have a fairly simple problem that I imagine has a simple solution. I have a plot in which the x-axis represents a location (0-8) and the y-axis is the probability of a certain action occuring at that location. I need to identify the x value when there is a 50% chance of the action happening. Example data below.
x = [0,1,2,3,4,5,6,7,8];
y = [0,0,0,.25,.25,.25,.75,1,1];
plot(x,y);
line([0,8],[.5,.5]);
I just need to identify the x value when y is 0.5. Is there a simple solution I am missing here? Thank you!
Accepted Answer
More Answers (1)
dpb
on 21 Nov 2019
P=0.5; % P to find
iy=find(y>P,1); % first point past P
xp=interp1(y(iy-1:iy),x(iy-1:iy),P); % interpolate between prior point and point
You'll have problem where your proability points are identical between observations, though.
Categories
Find more on Interpolation 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!