Find intersection of points in a graph
157 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Chinmayraj Doddarajappa
el 8 de Jul. de 2022
Respondida: Hrusheekesh
el 11 de Jul. de 2022
Is there a way to find the intersection of two curves in the graph? If yes, can someone help me with the code
0 comentarios
Respuesta aceptada
Star Strider
el 8 de Jul. de 2022
It would help to have the actual data. Assuming that ‘y2’ is either a constant or a line defined as a function of the same independent variable values as ‘y1’, this is straightforward —
x = linspace(0, 9); % Independent Variable
y1 = 700*exp(-0.45*x); % Curve
y2 = 150; % Line
xint = interp1(y1-y2, x, 0) % X-Intercept (Interpolation)
figure
plot(x, y1, [0 9], [1 1]*y2, xint, y2, 'sr')
legend('y_1', 'y_2', 'Intersection', 'Location','best')
text(xint, y2, sprintf(' \\leftarrow Intersection: X = %.3f',xint), 'Horiz','left', 'Vert','middle', 'Rotation',30)
If both lines are defined on different independent variable values, a separate intermediate interpolation to define them with respect to the same independent variable vector (using interp1) would be required first.
.
2 comentarios
Más respuestas (2)
Hrusheekesh
el 11 de Jul. de 2022
Hi chinmayraj,
You can also subtract the two curves and get the absolute difference, compare with the tolerance (ex: eps) for near values.
0 comentarios
Ver también
Categorías
Más información sobre Discrete Data Plots en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!