Re: [R] Plot a sphere

2004-01-02 Thread Derick Schoonbee
Uwe,

Thanks, I installed it and ran:

rgl.spheres(rnorm(10),rnorm(10),rnorm(10),radius=1,color=rainbow(10))

Nice :)

Thus, I'll give rgl a try but still would be 'stuborn' to see if I can 
figure a way out to use persp.

Regards,
D.
From: Uwe Ligges [EMAIL PROTECTED]
To: Spencer Graves [EMAIL PROTECTED]
CC: Derick Schoonbee [EMAIL PROTECTED],[EMAIL PROTECTED]
Subject: Re: [R] Plot a sphere
Date: Fri, 26 Dec 2003 12:48:49 +0100


Spencer Graves wrote:

   A hemisphere is relatively easy;  try the following:

   x - seq(-1, 1, length=21)
   Z - outer(x, x, function(x, y)sqrt(1-x^2-y^2))
   persp(x=x, y=x, z=Z)

   A contour plot is also relatively easy:

   image(x=x, y=x, z=Z)
   contour(x=x, y=x, z=Z, add=T)

   However, if you want an honest perspective plot of a sphere
 complete with the underside, etc., I know of nothing in R that could do
 that.  S-Plus has perspp, which could be used.  However, that seems to
 be one of the few features available in S-Plus that is not currently
 available in R.
The R package rgl by Adler and Nenadic can plot spheres. It is
available at
http://wsopuppenkiste.wiso.uni-goettingen.de/~dadler/rgl/
 --- and looks like it will shortly become a CRAN package.
Uwe Ligges

hope this helps.
   spencer graves

 Derick Schoonbee wrote:

  Hi,
 
  I'm new to R (and math ;) Would somebody please be so kind as to
  direct me in plotting a 3D sphere?
 
  I tried something in the lines of:
  
  y - x - seq(-pi, pi, length=pi*10)
  f - function(x,y)
  {
  z - sqrt(pi - x^2 - y^2)
  #z[is.na(z)] - 0
  z
  }
  z - outer(x, y, f)
 
  persp(x, y, z, theta = 120, phi = 30)
  
 
  I've also tried:  make.surface.grid(...) .. persp( as.surface(
  grid, z) ) ... with the same result: 'Incomplete' demi sphere and
  others..
 
  Any suggestions/solutions would be appreaciated.
 
  Regards,
  Derick
 
  PS:Merry X-mas ;)
 
  __
  [EMAIL PROTECTED] mailing list
  https://www.stat.math.ethz.ch/mailman/listinfo/r-help

 __
 [EMAIL PROTECTED] mailing list
 https://www.stat.math.ethz.ch/mailman/listinfo/r-help
__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help


Re: [R] Plot a sphere

2003-12-27 Thread Derick Schoonbee
Hi,

Thank you all for the solutions.. I now have 3 ways of plotting a 'perfect' 
sphere :)

1 rgl
2 scatterplot3d
3 persp (with polygon) as below.
Personally I like the transformation solution as in 3. Thanks a mill.

Derick Schoonbee



From: David Brahm  [EMAIL PROTECTED]
Reply-To: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
CC: [EMAIL PROTECTED]
Subject: Re: [R] Plot a sphere
Date: Fri, 26 Dec 2003 10:29:08 -0500
Derick Schoonbee [EMAIL PROTECTED] wrote:
 Would somebody please be so kind as to direct me in plotting a 3D sphere?
Here's one way.  I generate an empty 3D plot with persp, then fill it with
polygons transformed with trans3d (as found in the help for persp).  I
didn't do hidden surface removal (you didn't mention whether you wanted it),
but if you do, just reorder the polygons from back to front and paint 
them
a solid color (e.g. col=red), so hidden ones get painted over.

pmat - persp(0:1, 0:1, matrix(,2,2), xlim=c(-1,1), ylim=c(-1,1), 
zlim=c(-1,1),
  theta=25, phi=30, expand=.9, xlab=X, ylab=Y, zlab=Z)

trans3d - function(x,y,z, pmat) {  # From the help for 
persp
  tr - cbind(x,y,z,1) %*% pmat
  list(x = tr[,1]/tr[,4], y= tr[,2]/tr[,4])
}

theta - seq(0, 2*pi, length=51)
phi   - seq(0,   pi, length=26)
x - cos(theta) %o% sin(phi)
y - sin(theta) %o% sin(phi)
z - rep(1, length(theta)) %o% cos(phi)
for (j in seq(phi)[-1]) for (i in seq(theta)[-1]) {
  idx - rbind(c(i-1,j-1), c(i,j-1), c(i,j), c(i-1,j))
  polygon(trans3d(x[idx], y[idx], z[idx], pmat))
}
--
  -- David Brahm ([EMAIL PROTECTED])
__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help


Re: [R] Plot a sphere

2003-12-26 Thread Derick Schoonbee
Thanks for the reply. The results are exactly the same as what I'm getting.
Now I'm thinking in the lines of:
z1 - outer(x, y, f)
z2 - -outer(x, y, f)
So, I want to attach the two hemispheres. But then I need to figure out how 
append vectors z1  z2 and then 'feed' this to persp..

hmm, I'll look into it.

Regards,
D.
From: Spencer Graves [EMAIL PROTECTED]
To: Derick Schoonbee [EMAIL PROTECTED]
CC: [EMAIL PROTECTED]
Subject: Re: [R] Plot a sphere
Date: Thu, 25 Dec 2003 17:38:01 -0800
 A hemisphere is relatively easy;  try the following:

 x - seq(-1, 1, length=21)
 Z - outer(x, x, function(x, y)sqrt(1-x^2-y^2))
 persp(x=x, y=x, z=Z)
 A contour plot is also relatively easy:

 image(x=x, y=x, z=Z)
 contour(x=x, y=x, z=Z, add=T)
 However, if you want an honest perspective plot of a sphere complete 
with the underside, etc., I know of nothing in R that could do that.  S-Plus 
has perspp, which could be used.  However, that seems to be one of the few 
features available in S-Plus that is not currently available in R.

  hope this helps.  spencer graves

Derick Schoonbee wrote:

Hi,

I'm new to R (and math ;) Would somebody please be so kind as to direct me 
in plotting a 3D sphere?

I tried something in the lines of:

y - x - seq(-pi, pi, length=pi*10)
f - function(x,y)
{
z - sqrt(pi - x^2 - y^2)
#z[is.na(z)] - 0
z
}
z - outer(x, y, f)
persp(x, y, z, theta = 120, phi = 30)

I've also tried:  make.surface.grid(...) .. persp( as.surface( grid, z) 
) ... with the same result: 'Incomplete' demi sphere and others..

Any suggestions/solutions would be appreaciated.

Regards,
Derick
PS:Merry X-mas ;)

__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help


[R] Plot a sphere

2003-12-25 Thread Derick Schoonbee
Hi,

I'm new to R (and math ;) Would somebody please be so kind as to direct me 
in plotting a 3D sphere?

I tried something in the lines of:

y - x - seq(-pi, pi, length=pi*10)
f - function(x,y)
{
z - sqrt(pi - x^2 - y^2)
#z[is.na(z)] - 0
z
}
z - outer(x, y, f)
persp(x, y, z, theta = 120, phi = 30)

I've also tried:  make.surface.grid(...) .. persp( as.surface( grid, z) 
) ... with the same result: 'Incomplete' demi sphere and others..

Any suggestions/solutions would be appreaciated.

Regards,
Derick
PS:Merry X-mas ;)

__
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help