Skip to content

rgl.postscript

2 messages · coar, Duncan Murdoch

#
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
#
On 5/29/2007 1:53 PM, coar wrote:
You could try resizing, or using Latex to put the labels on the plot, 
but there is no parameter to control what gets cut off.  You should also 
be aware that the Postscript support is somewhat limited, and you might 
be better off using a bitmap copy with rgl.snapshot.

Duncan Murdoch