# Sphere Point Picking in Cartesian coordinates [closed]

I have a vector $\vec{A}(x, y, z)$.

Now I want to rotate the vector randomly (x by ϕ, y by θ and z by ψ) in the 3D plane in the Cartesian coordinate itself.

Is there any way to do that?

I want to pick points randomly on a sphere so that they are uniformly distributed.

• What is the "sphere point picking" problem, in this context? – C. E. Apr 25 '18 at 14:13
• mathworld.wolfram.com/SpherePointPicking.html – Bikash Apr 25 '18 at 14:14
• If you want to pick points randomly on a sphere so that they are uniformly distributed, then please say so. Currently it is said in a difficult to understand way. There is a method for it on the page that you linked to. Please also see the function RandomPoint. – C. E. Apr 25 '18 at 14:17

This answer is based on RandomPoint as pointed out by C.E.

Define the following function that generates the random points given a 3D vector and sample size.

pts[A_List, n_] :=
RandomPoint[Sphere[{0, 0, 0}, Sqrt[A[[1]]^2 + A[[2]]^2 + A[[3]]^2]],
n]


Example:

data = pts[{1, 2, 3}, 1000];
ListPointPlot3D[data]