From: Wladimir Eremeev <wl_at_eimb.ru>

Date: Tue 26 Jul 2005 - 03:16:15 EST

}

)

trellis.focus("panel", 3, 3, clip.off=TRUE, highlight=FALSE) panel.axis("bottom", check.overlap=TRUE, outside=TRUE)

Date: Tue 26 Jul 2005 - 03:16:15 EST

Hi,

PM> Does the following do what you want?

PM> xyplot(<whatever>) PM> trellis.focus("panel", 4, 2, clip.off=TRUE, highlight=FALSE) PM> panel.axis("bottom", check.overlap=TRUE, outside=TRUE)

Yes, it does. Thank you very much!

With the exception, that first call must be
trellis.focus("panel", 3, 3, clip.off=TRUE, highlight=FALSE)

PM> (it would be easier to help if you could provide code that others can run)
I am sorry.

Here it is if any one still interested.

Any other comments concerned to the R code below will be appreciated.

====8<====

# The draw.key behaves slightly incorrect, and I have redefined it.

# (this was discussed in R-help on May 19-21, 2005)

source('../common_r_things/draw.key.r')

# Lattice tunings, like colors, cex-s, etc.

source('../common_r_things/wl_theme.r')

*# I need also two additional curves on each plot panel,
*

# and a slope and its significance.

# The function below plots everything.

*# Colors for additional curves, mentioned above.
*

# These variables are global, as the curves will appear in the plot key,

# and I would like to have a single place to define the plot and key parameters.

i1.col<-"tomato3"

i2.col<-"gray50"

plot.panel<-function(x,y,panel.counter,...){

# Plot additional curves. They are constant.

i2<-c(-0.7,-1.7,0.2,0.8,-0.4,-1.7,-0.8,-0.4,0.9,0.7,0.5,0.7,1.1,1.5,-1.7)
i2<-(i2-min(i2))*(max(y)-min(y))/(max(i2)-min(i2))+min(y)

i1<-c(7.39230,-0.67956,2.65596, 4.44415, 0.73161, 1.66836,-2.52039, 2.52273,

-2.51820,-0.89912, 1.89464,-3.26774,3.58680, 0.58910,-2.89624) i1<-(i1-min(i1))*(max(y)-min(y))/(max(i1)-min(i1))+min(y)

panel.lines(x,y=i2,lwd=2,col=i2.col)

panel.lines(x,y=i1,lwd=2,col=i1.col)

# Plot actual data.

panel.xyplot(x,y,...);

# Calculate and print the slope and its significance.

m<-lm(y~x);

v<-pf(summary(m)$fstatistic[1],summary(m)$fstatistic[2],

summary(m)$fstatistic[3]);

if(v=="NaN") v<-0;

if(v>0.99) {

sign.exp<-expression(bold(S>0.99))

}else{

sign.exp<-substitute(expression(bold(S==V)),list(V=round(v,2)))
}

sl<-formatC(summary(m)$coefficients[2,1]*10,digits=2,format="f");
err<-formatC(summary(m)$coefficients[2,2]*10,digits=2,format="f");

grid.text(label=c(eval(substitute(expression(bold(paste("Slope: ",Sl%+-%Err~~dec^-1))),

list(Sl=sl,Err=err))), eval(sign.exp)), x=0.1, # The place for the text is chosen so, that it appears on the empty space. # In my case, first 6 panels have empty top and the rest 5 ones have empty bottom. y=if(panel.counter<7) c(1,0.85) else c(0.25,0.1), default.units="npc",just= c("left", "top") )

}

trellis.device("png",filename="general_plot2.png",theme=wl.theme,width=1000,height=1200)

*# Data frame flow contains monthly mean data and some their aggregations
**# That's why month variable varies from 1 to 29.
*

# Year varies from 1990 through 2004.

# However, now I need only a subset of the data.

print(

xyplot(A3.index~year|factor(month),

strip=strip.custom(factor.levels=c("January", "Integral (Jan-Feb)","Integral (Jan-Mar)","Integral (Jan-Apr)","Integral (Jan-May)","Integral (Jan-Jun)", "Integral (Jan-Jul)","Integral (Jan-Aug)","Integral (Jan-Sep)","Integral (Jan-Oct)","Integral (Jan-Nov)")), subset=month %in% c(1,19:28), data=flow,as.table=TRUE,type=c("o","g","r"),layout=c(3,4),pch=1,col="black", ylab="flow index",xlab=NULL, scales=list(x=list(alternating=1),y=list(alternating=1)), between=list(x=0.2,y=0.2), panel=plot.panel, key=list(size=2,between=2,col="black",lty=1,border=TRUE,divide=1, x=0.95,y=0.07,corner=c(1,0),columns=1, lines=list(pch=c(32,1,32,32,32,32,32),c(0,1,0,1,0,1,0),lwd=c(0,1,0,2,0,2,0), col=c(0,"black",0,i1.col,0,i2.col,0),type="b"), text=list(c("","Flow index","","i1 index(scaled)","", "i2 index (scaled)",""),cex=1.1) ) )

)

trellis.focus("panel", 3, 3, clip.off=TRUE, highlight=FALSE) panel.axis("bottom", check.overlap=TRUE, outside=TRUE)

dev.off()

====8<====

--- Best regards, Wladimir mailto:wl@eimb.ru ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.htmlReceived on Tue Jul 26 03:21:44 2005

*
This archive was generated by hypermail 2.1.8
: Fri 03 Mar 2006 - 03:34:01 EST
*