0". What for When using geom_histogram...">

When using "geom_histogram", the error "unit (tic_pos.c," mm ") appears:" x "and" units "must have a length> 0". What for

When using geom_histogram an error appears

 unit(tic_pos.c, "mm") : 'x' and 'units' must have length > 0. 

Why?

 p4<-ggplot(BCIcor,aes(x=cor))+geom_histogram(binwidth = 0.2) 

It showed a black bar graph. However, when I wanted to group the data with p to make the plot colorful, I added fill=p ,

 p4<-ggplot(BCIcor,aes(x=cor,fill=p))+geom_histogram(binwidth = 0.2) 

I got the following:

 error :"unit(tic_pos.c, "mm") : 'x' and 'units' must have length > 0". 

What happened?

Data frame:

  cor pvalue p 1 0.87882370 0.049710 2 2 -0.83041880 0.081660 1 3 -0.12989750 0.835100 1 4 -0.75309860 0.141700 1 5 -0.88553450 0.045680 2 
+64
r ggplot2
May 15 '13 at 15:44
source share
1 answer

You got this error because p values ​​are numeric in your data frame, but in this case for fill= you need discrete values ​​because the columns are stacked and will be colored according to p . Just use as.factor() around p .

 ggplot(BCIcor,aes(x=cor,fill=as.factor(p)))+geom_histogram(binwidth = 0.2) 
+89
May 15 '13 at 15:48
source share



All Articles