How should I find the x value of the given y value?
조회 수: 143 (최근 30일)
이전 댓글 표시
Hi, I have this graph and here I would like to find the coordinates where the horizontal line and curvy graph meet together
How should I find the x-coordinate of the given y-value (this case y=6.585)?
Thank you
댓글 수: 0
답변 (2개)
SAA
2020년 7월 18일
편집: SAA
2020년 7월 18일
I am not sure if you can find an exact value since you are trying to compare 2 doubles and that's usually not a good idea, but you can get it using a tolerance.
it should be something like this:
% assuming you have 2 matrices x and y containing your data
z = x(y==6.585); % assuming that there is an exact value that equals it but most likely you don't so you need a tolerance
% this should work
tol = 10^-9;
z = x(abs(y-6.585) < tol); % you can also use find instead of x
댓글 수: 0
Star Strider
2020년 7월 18일
Try something like this:
y = 6.585;
eqidx = find(diff(sign(curvy_graph - y)));
for k = 1:numel(eqidx)
ixrng = [-1 0]+eqidx(k);
xval(k) = interp1(curvy_graph(ixrng), x(ixrng), y);
end
That will give you the x-value for all of the intersections. Choose the ones you want to use. See the documentation on interp1 for its options.
.
댓글 수: 0
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!