This can be simplified to
x_grad = grad(uh)[0]
or simply
x_grad = uh.dx(0)
Im not sure what
Is supposed to do in the code above, as it is not used.
For the last part of your question, see:
https://jsdokken.com/dolfinx-tutorial/chapter1/membrane_code.html#making-curve-plots-throughout-the-domain
which explains how to evaluate a function at any set of points, thus after interpolating the gradient into an appropriate space, you can use the eval-functionality.
There are other ways of Getting the gradient at a given point in a slightly more efficient fashion, but as Im currently not at my computer, I dont have time to sketch out another version.