[R] rgl.postscript

coar coar at lamar.colostate.edu
Tue May 29 19:53:26 CEST 2007


Hi, 
I am having an issue when creating a postscript file from RGL window.  It 
seems to cut off some of the axis labels.  Here is the code I am using.

I created a 3D plot using RGL_0.71 with R 2.5 on Windows XP.

z1<-c(5,4,1,4.5,2,3,2,1,1)
z2<-c(6,8,7,7.5,5,3.5,4,1,1)
z3<-c(3,2,4,7,3,4.5,6,2,3)
x1<-seq(1,9)
x2<-seq(1,9)
x3<-seq(10,18)

y1<-seq(8,0)
y2<--1*y1
y3<-rep(0,9)
m1<-cbind(x1,y1,z1)
m2<-cbind(x2,y2,z2)
m3<-cbind(x3,y3,z3)
m3<-rbind(m2[9,],m3)

up1<-m1[,-2]
up2<-m2[,-2]

lp<-m3[,-2]
p1<-rbind(up1, lp[-1,])
p2<-rbind(up2, lp[-1,])
sp1<-spline(p1)
sp2<-spline(p2)

sp1m<-cbind(sp1$x,sp1$y)
sp2m<-cbind(sp2$x,sp2$y)

ge9<-(sp1$x>=9)
ge9recs<-seq(1,length(ge9))[ge9]

b1<-sp1m[ge9recs,]
b2<-sp2m[ge9recs,]

b1b2<-cbind(b1[,2],b2[,2])

bavg<-apply(b1b2,1,mean)
blow<-cbind(sp1m[ge9recs,1],bavg)

path.one<-rbind(sp1m[-ge9recs,],blow)
path.two<-rbind(sp2m[-ge9recs,],blow)

uy1<-9-path.one[-ge9recs,1]
ly1<-rep(0,length(ge9recs))
y1<-c(uy1,ly1)

uy2<--1*(9-path.two[-ge9recs,1])
ly2<-rep(0,length(ge9recs))
y2<-c(uy2,ly2)

m1<-cbind(path.one,y1)
m2<-cbind(path.two,y2)
d.mat<-rbind(m1,m2)

open3d()

points3d(x=d.mat[,1],y=d.mat[,3],z=d.mat[,2],size=3)
lines3d(x=m1[,1],y=m1[,3],z=m1[,2],size=3)
lines3d(x=m2[,1],y=m2[,3],z=m2[,2],size=3)

I then added axes using

box3d()
axes3d(c('x--'),tick=TRUE,nticks=5) 
axes3d(c('z--'),tick=TRUE,nticks=5) 
axes3d(c('z++'),tick=TRUE,nticks=5)

title3d(main = "Test 3-D plot", sub = NULL, xlab ="Lag", ylab = NULL, zlab = 
"Dissolved O2", line = NA)


I did some rotation to determine a nicer view of the plot.  I now wanted to 
create a snapshot of the plot (using rgl.postscript since I will be using in 
LATEX).  However, it cuts off some of the axis labels.  Is there a way to 
adjust the area that gets captured to the postscript file?  or some other way 
to fix this?

Thanks,
Bill



More information about the R-help mailing list