It’s not particularly simple, but if your graph is a function of x (never loops back so there are multiple values of y for the same x), a binary search like this should work:
x = thisComp.layer("Vertical Line").transform.position[0];
L = thisComp.layer("Graph");
p = L.content("Shape 1").content("Path 1").path;
iterations = 12;
p0 = L.toComp(p.pointOnPath(0));
p1 = L.toComp(p.pointOnPath(1));
if (x < p0[0]){
p0;
}else if (x > p1[0]){
p1;
}else{
lower = 0;
mid = .5;
upper = 1.0;
for ( i = 0; i < iterations; i++){
pCur = L.toComp(p.pointOnPath(mid));
if (pCur[0] == x) break;
if (pCur[0] > x){
upper = mid;
}else{
lower = mid
}
mid = (upper+lower)/2;
}
pCur
}