[R] Histogram colours in lattice.

Rolf Turner r.turner at auckland.ac.nz
Wed Oct 8 21:15:55 CEST 2008


On 8/10/2008, at 5:16 PM, Deepayan Sarkar wrote:

> On 10/7/08, Rolf Turner <r.turner at auckland.ac.nz> wrote:
>>
>>  I am trying to do a histogram lattice plot and I would like the
>>  histogram to be filled with a different colour in each panel.
>>
>>  Note:  I want every bar in each histogram to be the same colour,
>>  but that there should be different colours *between* histograms.
>>
>>  Can't seem to get this to work.  I thought that something like
>>  the following would be a goer:
>>
>>  set.seed(42)
>>  X <- rnorm(200)
>>  A <- factor(sample(letters[1:5],200,TRUE))
>>  DF <- data.frame(x=X,a=A)
>>  print(histogram(~x|a,data=DF,col=2:6,type="count",
>>  panel=function(x,...,subscripts,col) {
>>         panel.histogram(x,...,col=col[subscripts])
>>  }))
>>
>>  However it somewhat mysteriously colours the first bar/rectangle
>>  of the histogram appropriately in the last three panels, leaving
>>  all of the others blank, and leaves all bars blank in the first
>>  two panels.
>
> That's because you are ending up with 'col[subscripts]' being a
> vector, most elements of which are NA.
>
>>  Can I do what I want?  How?
>
> print(histogram(~x|a,data=DF,col=2:6,type="count",
>   panel=function(x,...,col) {
>      panel.histogram(x,...,col=col[packet.number()])
> }))

	Works like a charm.  Thanks very much.  I guess I thought
	I roughly understood what ``subscripts'' meant, and it seems
	I don't understand at all.  And I didn't know *anything* about
	``packet.number()''.  It would seem that I need to read your
	book --- are these things explained there?

	Thanks again.

		cheers,

			Rolf Turner

######################################################################
Attention:\ This e-mail message is privileged and confid...{{dropped:9}}



More information about the R-help mailing list