How do i get both values of x for y=3.5

1 次查看(过去 30 天)
x=0:0.001:3.5;
y=5*sin(x);
figure
plot(x,y);
grid ON
target =3.5
[difference, index_At_target] = min(abs(y-target));
xtarget = x(index_At_target)
The result is showing only one output as xtarget=2.3660, where as there are two values of x for same y value. I want to obtain the other value from plot not by solving for y.
Result
xtarget =
2.3660

回答(1 个)

Walter Roberson
Walter Roberson 2018-2-17
[sorted_difference, sort_index] = sort(abs(y-target));
xtarget = sort(x(sort_index(1:2)));

类别

Help CenterFile Exchange 中查找有关 Graphics 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by