[R] unequal bins in filled.contour
Duncan Murdoch
murdoch.duncan at gmail.com
Wed Aug 31 20:08:53 CEST 2011
On 31/08/2011 10:33 AM, Dan Carpenter wrote:
> Hello,
>
> I am trying to plot SADIE red-blue plots of cluster indicies using
> filled.contour. I want a plot which only has three bins for the data:
> <-1.5, -1.5 - 1.5,>1.5, but I am having trouble getting there.
>
> example
> X1 X2 X3 X4 X5
> 1 -5 -4.5 1.0 4.5 6
> 2 -3 -2.0 1.2 -1.0 3
> 3 0 0.0 0.0 -0.5 -1
> 4 -2 -3.0 1.0 1.5 3
> 5 -6 -2.0 0.5 3.0 2
> example<-as.matrix(example)
> filled.contour(example)
> filled.contour(example,levels=seq(min(example),max(example)),
> color.palette=colorRampPalette(c("blue","white","red")))
>
> I tried this to get just three bins, but data outside that range doesn't
> plot.
> seq(-4.5,4.5,by=3)
> [1] -4.5 -1.5 1.5 4.5
> filled.contour(example, levels=seq(-4.5,4.5,by=3),
> color.palette=colorRampPalette(c("blue","white","red")))
>
> I increased the range but I now have two shades of red and blue, when
> what I really want is one shade of each
> seq(-7.5,7.5,by=3)
> [1] -7.5 -4.5 -1.5 1.5 4.5 7.5
> filled.contour(example, levels=seq(-7.5,7.5,by=3),
> color.palette=colorRampPalette(c("blue","white","red")))
>
> Is there a way to either
> 1) Create unequal bins, so all data below -1.5 is blue and all data
> above 1.5 red
> Or
> 2) colour more than one bin the same shade
1) Just say where you want the breaks, e.g. levels=c(min(example), -1.5,
1.5, max(example))
2) Give the colours you want using something like col=c("red", "white",
"red")
Duncan Murdoch
More information about the R-help
mailing list