#!/usr/bin/Rscript polar <- function(points) { r <- sqrt(points[,1])*sqrt(1/pi) p <- points[,2]*2*pi points[,1] <- r*cos(p) points[,2] <- r*sin(p) return(points) } points <- runif(10000) dim(points) <- c(5000,2) square <- points circle <- polar(points) square.distances <- apply(square, 1, function(x) sqrt(sum(x^2))) circle.distances <- apply(circle, 1, function(x) sqrt(sum(x^2))) par(mfrow=c(2,2)) plot(square) qqnorm(square.distances) plot(circle) qqnorm(circle.distances)