On Nov 26, 2009, at 8:30 PM, Peng Cai wrote:

> Hello Peter and David,
>
> Thanks for your help. I have added what you suggested and its  
> working perfectly fine except:
>
> When I add the panel function, the legend changes. In the sense  
> without the panel function the column names are shown with small  
> colored rectangles (on right), but after adding it the rectangles  
> change to tiny un-filled diamonds. Any suggestions?

Read the help pages and the obvious links regarding your desired  
modification. In this case the link I followed was to simpleKey and  
the help page I got offered what seemed to me to be an obvious solution.

-- 
David.

>
> My current code and data is below,
>
> Thanks a lot,
> Peng
>
>
> Data:
> Sample        Col1    Col2    Col3
> Row1  -2      4       -1
> Row2  3       -2      4
> Row3  3       5       -2
> Row4  4       1       -1
>
> Code:
>
> dta<-read.table("data.txt", header=TRUE, row.names="Sample")
> coltemp=c(619,376,497)
> myYscale <- seq(-10, 10, 1)
> barchart(data.matrix(dta),
>        horizontal=FALSE,
>        stack=TRUE,
>      par.settings = simpleTheme(col = colors()[coltemp]),
>        auto.key=list(space="right"),
>      border=NA,
>      panel=function(x,y,...){
>               panel.abline(h=c(myYscale), col.line="gray")
>               panel.barchart(x,y,...)
>        },
>      scales = list(y = list(at = myYscale))
> )
>
>
>
>
>
>
>
>
>
> Thanks,
> Peng
>
>
> On Thu, Nov 26, 2009 at 7:23 PM, Peng Cai  
> <pengcaimaill...@gmail.com> wrote:
> Hi Again,
>
> Before I start getting into what you just suggested, let me confirm  
> if I made my point clear previously. I'm looking for horizontal  
> lines similar to one on the following link (It has parallel lines  
> for each y=200, y=400,...):
>
> http://pfiles.5min.com/images/176735/176734313.jpg
>
> What you just suggested can solve this purpose? Thanks,
>
> Peng
>
>
> On Thu, Nov 26, 2009 at 7:09 PM, Peter Ehlers <ehl...@ucalgary.ca>  
> wrote:
> Peng Cai wrote:
> Thanks David, I tried panel.abline(h=somevalue) -- both inside and  
> outside
> of barchart() function but its not working. Any suggestions?
>
> Peng
> Here's some code related to the data you posted earlier.
>
>
> barchart(data.matrix(dta), horizontal = FALSE, stack = TRUE,
>             par.settings = simpleTheme(col = 2:4),
>             panel=function(x,y,...){
>               panel.abline(h=c(-2,0,3,4), col.line="gray")
>               panel.barchart(x,y,...)
>
>             },
>             scales = list(y = list(at = -2:8)),
>             auto.key = list(space = 'right', rectangles=TRUE,
>                 points=FALSE)
> )
>
> If you want the gray lines in front of the bars, switch the
> order of the panel functions. With lattice, it's all about
> what goes into each panel (you have only one panel here).
> If you want more than one thing in a panel, you have to set
> up a function to do those things.
>
> I had to add the rectangles= and points= arguments to
> auto.key to get the same key as you had earlier.
>
>  -Peter Ehlers
>
>
>
> On Thu, Nov 26, 2009 at 6:42 PM, David Winsemius <dwinsem...@comcast.net 
> >wrote:
>
> On Nov 26, 2009, at 6:12 PM, Peng Cai wrote:
>
>  Thanks a lot Peter! One more help, is there a similar function  
> abline()
> for
> barchart().
>
> ?panel.abline
>
>
>
> I'm trying to add a (light gray colored) horizontal lines, one for  
> each
> y-value.
>
> Peng
>
> On Thu, Nov 26, 2009 at 5:59 PM, Peter Ehlers <ehl...@ucalgary.ca>  
> wrote:
>
>  Peng Cai wrote:
>  Hi Peter,
> I'm not sure but it seems "scales" command works only with integer
> values.
>
> If the y-axis values are very small (such as -0.03, -0.02, -0.01, 0,
> 0.01,..., 0.08). My current plot has values 0, 0.05, and 0.10 only.  
> But
> I
> need it to extend it to negative numbers and reduce the scale width
> (like
> -0.04, -0.02, 0, 0.02,...).
>
> Can I change these too? Thanks!
>
>
> Use, e.g.
>
> myYscale <- seq(-0.04, 0.08, 0.02)
> barchart(...,
>  ...,
>  scales = list(y = list(at = myYscale)),
>  ...
> )
>
> -Peter Ehlers
>
>
>
>  Peng
> On Thu, Nov 26, 2009 at 3:18 PM, Peter Ehlers <ehl...@ucalgary.ca>
> wrote:
>
>
>  Peng Cai wrote:
> Hi R Users,
>
> I'm trying to plot a stacked barplot. Here is data:
>
> Sample Col1 Col2 Col3
> Row1 -2 4 -1
> Row2 3 -2 4
> Row3 3 5 -2
> Row4 4 1 -1
>
> I'm using following R code:
>
> library(lattice)
> dta<-read.table("data.txt", header=TRUE, row.names="Sample")
> barchart(data.matrix(dta),
>    horizontal=FALSE,
>    stack=TRUE,
> col=2:4,
>    auto.key=list(space="right",
> title=names(dimnames(dta))[2])
> )
>
> Above code is working fine, but I need help with:
>
> 1) Legend boxes have default colors, whereas I'm looking them to match
> with
> barplot colors (col=2:4).
>
> replace the line
>
> col = 2:4,
>
> with
>
> par.settings = simpleTheme(col = 2:4),
>
>
> 2) Can I increase scale for y axis, like currently it plotting
>
>  -2,0,2,4,...
> I would like it as -2,-1,0,1,...
>
> add the line
>
> scales = list(y = list(at = -2:8)),
>
> or whatever tick locations you prefer.
>
> -Peter Ehlers
>
>
> Any help would be greatly appreciated,
>
> Thanks,
> Peng
>
>    [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
>
>
>
>
>  ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
>
>       [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
> David Winsemius, MD
> Heritage Laboratories
> West Hartford, CT
>
>
>
>
>
>

David Winsemius, MD
Heritage Laboratories
West Hartford, CT


        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to