Skip to content

the bar width of barchart plot in lattice package

6 messages · David Winsemius, Deepayan Sarkar, zhenjiang xu

#
On Apr 20, 2010, at 9:46 AM, zhenjiang xu wrote:

            
?barchart

Looking at the arguments to barchart in the help page I would have  
guessed that box.ratio would do what you want. Since that is clearly  
not reproducible code , (in the absence of test dataset of the  
appropriate structure) I suppose guessing will remain the level of my  
knowledge in this instance.
David Winsemius, MD
West Hartford, CT
1 day later
#
On Apr 21, 2010, at 9:51 PM, zhenjiang xu wrote:

            
I apologize. It was reproducible code. I missed the "values"  
assignment. There is also a box.width argument which does affect how  
the plot gets drawn, but the effects do not appear salutory. It  
appears that the alignment of the bars gets shifted relative to the  
labels. The barchart function cannot seem to deal with the completity  
of the 2 * 5 factor crossed with a c(3,3,4) factor. On the other hand  
that problem seems to be present in the original plot as well. Maybe  
you should re-think the structure of the data?

Compare:

bc.factors <-
  barchart(values ~ sequences | scores * factors , data = a,
          groups = levels,
          layout = c(2,3), box.ratio=1, box.width=1.5,
          between = list(y=0.5),
          clip = list(strip = 'off'),
          par.strip.text = list(cex=0.7),
          par.settings = list(fontsize=list(text=8)),
          auto.key = list(rectangles = TRUE, space = 'right', columns  
= 1),
          draw.key = TRUE,
          scales = list(x = list(rot = 45)))
1 day later
#
On Wed, Apr 21, 2010 at 8:55 PM, David Winsemius <dwinsemius at comcast.net> wrote:
The problem is that levels is nested within factors:
factors
levels                      Cycles MaxPairs Order
  Cycle 1                       10        0     0
  Cycle 2                       10        0     0
  Cycle 3                       10        0     0
  Cycle 4                       10        0     0
  Order 1                        0        0    10
  Order 2                        0        0    10
  Order 3                        0        0    10
  MaxPairs = 20                  0       10     0
  MaxPairs = Average Length      0       10     0
  MaxPairs = 500                 0       10     0

I can't think of a meaningful design that would give the desired result here.

-Deepayan