import numpy as np
def points_on_sphere(N, norm=np.random.normal):
"""
http://e...content-available-to-author-only...a.org/wiki/N-sphere#Generating_random_points
"""
normal_deviates = norm(size=(N, 3))
radius = np.sqrt((normal_deviates ** 2).sum(axis=0))
points = normal_deviates / radius
return points
print points_on_sphere(10)
aW1wb3J0IG51bXB5IGFzIG5wCmRlZiBwb2ludHNfb25fc3BoZXJlKE4sIG5vcm09bnAucmFuZG9tLm5vcm1hbCk6CiAgICAiIiIKICAgIGh0dHA6Ly9lLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5hLm9yZy93aWtpL04tc3BoZXJlI0dlbmVyYXRpbmdfcmFuZG9tX3BvaW50cwogICAgIiIiCiAgICBub3JtYWxfZGV2aWF0ZXMgPSBub3JtKHNpemU9KE4sIDMpKQogICAgcmFkaXVzID0gbnAuc3FydCgobm9ybWFsX2RldmlhdGVzICoqIDIpLnN1bShheGlzPTApKQogICAgcG9pbnRzID0gbm9ybWFsX2RldmlhdGVzIC8gcmFkaXVzCiAgICByZXR1cm4gcG9pbnRzCnByaW50IHBvaW50c19vbl9zcGhlcmUoMTApCg==