# Increase variability

#### trinker

##### ggplot2orBust
I have the need to take a variable that is normally distributed around 0 and the lower and upper bound is at -1 and 1. I need a transformation to flatten the top and widen the tails.

I just happened to think this may be a fishers z I'm looking for. If so I'll mark this thread as solved.

#### trinker

##### ggplot2orBust
no that's not it:

Data looks something like this:
Code:
x <- rnorm(10000, sd = .2)

#### trinker

##### ggplot2orBust
Ahh the distribution is a bit different than I had originally thought. It's bimodal. Here's a link to the data file as an R .RData file:

Code:
x
plot(x)
hist(x)
Here's what it looks like:

#### Dason

It's still not clear to me what you want to do and why you want to do it.

#### trinker

##### ggplot2orBust
Yeah sorry to me it's clear. The deal is I have difference in proportions of word uses between two people. I then want to color the words in a word cloud ad a gradient based on who used the words more. The problem is right now there's so little variablity if I use read and blue as the 2 gradient colors all words are purple. I actually demo how to do this here: http://trinkerrstuff.wordpress.com/2012/11/13/gradient-word-clouds/

However that solution is for that one time. The distribution of proportion difference will change.

#### Dason

You could use the rankings instead of the raw data.

#### trinker

##### ggplot2orBust
Hmm that may make sense. Zipf did that. let me think on that. Thanks for the idea Dason.

#### Dason

Or you could transform the data to be an 'ideal normal spread'.

Code:
transToNorm <- function(x){
qnorm( rank(x)/(length(x) + 1) )
}

j <- runif(1000)
hist(j)
k <- transToNorm(j)
hist(k)

#### trinker

##### ggplot2orBust
I think I was approaching the problem all wrong. Here's the final approach I took based on your rank comment:

Code: