s-news
[Top] [All Lists]

Re: Formatting trellis graphics

To: "Riley, Steve" <Steve.Riley@pfizer.com>, <s-news@lists.biostat.wustl.edu>
Subject: Re: Formatting trellis graphics
From: "Max Zhao" <mzhao@homer.att.com>
Date: Mon, 22 Aug 2005 15:03:47 -0400
References: <D5D1C94BFC52BB47AE84BD29EA89778D0296A57F@groamrexm02.amer.pfizer.com>
Steve,
 
Trellis Graphics is almost as flexible as the regular Splus in making the graphs.  There is an argument called "scale" for trellis functions such as xyplot, barchart etc.  You could turn off the axis completely, and using the axis to do the graph yourself, allowing you to make changes you need. Below is the code that will generate the graph you want.
 
Hope this help.
Max
 
####################################################
y <- c(1:10,1:10*2)
x <- c(rep(1:10,2))
id <- c(rep(1,10), rep(2,10))
data <- cbind.data.frame(TIME = x, CONC = y,ID = id)
 
trellis.device(graphsheet)
par(oma=c(4,2,2,2))                                            ##  This is to control the outer margin.
xyplot(CONC~TIME, data = ""
 groups = ID,
 scale = list(x = list(draw = F), y = list(draw = F)), xlab="",ylab="",
 panel = function(x,y,subscripts,...) {
  panel.superpose(x,y,subscripts,type="b",...)
  axis(side=1, at=seq(2,10,2), labels=seq(2,10,2),font=2)              ## Add the ticks with your font choices.
  axis(side=2, at=seq(5,20,5),labels=seq(5,20,5),font=3,adj=1)
 }
)
mtext("Time",side = 1, outer = F, font =2, cex = 1.2, line=6)        ### Add x and y labels.
mtext("CONC",side = 2, outer = F, font =2, cex = 1.2, line=5)
 
----- Original Message -----
Sent: Monday, August 22, 2005 11:29 AM
Subject: [S] Formatting trellis graphics

All,
 
I have a 2 questions regarding formatting of trellis graphics. Using the plot generated by the code below as an example, how might I, 1) change the font of the axis tick labels and 2) generate the plot without the top and right side axes. Using traditional graphics, these items are modifiable using par(font = 2, bty = 'l') but I have been unsuccessful in getting a similar result using trellis graphics. Any input from the group would be greatly appreciated! Thank you.
 
y <- c(1:10,1:10*2)
x <- c(rep(1:10,2))
id <- c(rep(1,10), rep(2,10))
data <- cbind.data.frame(TIME = x, CONC = y,ID = id)
#
#    Set font for axis labels
#
add.text <- trellis.par.get("add.text")
add.text$font <- 2
trellis.par.set("add.text",add.text)
 
xyplot(CONC~TIME, data = "" groups = ID, panel = panel.superpose, type = 'b')
 

Steve Riley, Pharm.D., Ph.D.
Clinical Pharmacokinetics & Pharmacodynamics
Pfizer Global Research & Development
Mail Stop MS8260-2302
Eastern Point Road
Groton, CT 06340

Steve.Riley@pfizer.com
Tel:  (860) 686-1795
Fax: (860) 686-5672



LEGAL NOTICE
Unless expressly stated otherwise, this message is confidential and may be privileged. It is intended for the addressee(s) only. Access to this E-mail by anyone else is unauthorized. If you are not an addressee, any disclosure or copying of the contents of this E-mail or any action taken (or not taken) in reliance on it is unauthorized and may be unlawful. If you are not an addressee, please inform the sender immediately.
<Prev in Thread] Current Thread [Next in Thread>