HERE IS A FOLLOWUP ON MY POSTING.
THANK YOU TO EVERYONE WHO REPLIED:
-MATT KURBAT
------------------------------------------------------
>
> Dear Splus Users,
>
> Murdoch and Chow (1996) present a way to display large correlation
> matrices graphically. The article mentions that statlib contains
a copy
> of their splus code, but I could not find it. Does anyone have it
or
> know what it's called/where to find it? The reference is:
> Murdoch and Chow (1996). A graphical display of large
correlation
> matrices. American Statistician.
Why not ask the authors?
Brian D. Ripley, ripley@stats.ox.ac.uk
I DID NOT KNOW HOW TO CONTACT THE AUTHORS.
AS IT TURNS OUT, ONE CONTACTED ME:
It's called ellipse.shar. You'll likely run into trouble installing
it in current SPLUS versions; they regularly change the Postscript
device drivers, and I haven't updated the software since the original
version.
A version is currently being ported to R, by Jesús María Frías
Celayeta <iosu@ensia.inra.fr>. You might want to contact him to find
out if it's available yet.
Duncan Murdoch
dmurdoch@pair.com
OTHER POSTINGS:
You could just use image() to look at a correlation matrix.
I don't know what M &C do but that seems useful. I know better methods do
exist, esp methods or changing row and column order.
SDB
S.D.Byers [byers@research.att.com]
Christian Keller [ckeller@aicos.com] MENTIONED A RELATED ROUTINE
TO DRAW SINGLE ELLIPSE. HERE ARE SUMMARIES OF THIS AND OTHERS:
Biggerstaff, Brad J. [bkb5@cdc.gov]
Wed 5/19/99 11:05 AM
Here's a function to draw an ellipse, with the option to fill it in or just
get the coordinates of the points.
It's an extension of a function of John Wallace I got from S-news some years
ago.
Cheers,
Brad
Brad Biggerstaff, Ph.D.
Centers for Disease Control and Prevention
National Center for Infectious Diseases
Division of Vector-Borne Infectious Diseases
P.O. Box 2087
Fort Collins, CO 80522-2087 U.S.A.
(970) 221-6473 bkb5@cdc.gov
===================================================
"ellipse"<-
function(cx, cy, rx, ry, theta = 0, yaxis = T, pointsonly = F, fill = F,
...)
{
# function to plot an ellipse with center (cx,cy)
# and major axis/2 along x equal to rx,
# major axis/2 along y equal to ry
# and rotated through an angle theta (in radians)
# note that a circle is obtained with rx=ry,
# in which case theta isn't very helpful either
#
# the parameter yaxis adjusts the size correct in the
# y- or x-axis, as plotting is generally not square
# ...so using par(pty="s") will eliminate the need for this
#
# the parameter pointsonly determines if a plot is
# added-to or the values of the points are returned
# in a list
#
# fill is a flag to indicate filling in the ellipse
#
# ... is useful for arguments to polygon, such as color
# and density
#
# this is an adjustment by Brad Biggerstaff
# on 27 April 1999 to the funtion circle() written
# by John R. Wallace, as noted below
#
# the original function was obtained from S-news
#
# Brad Biggerstaff (bkb5@cdc.gov)
# May, 1999
#
# cx, cy, coordinates for centre; r is radius
# yaxis = T, radius is correct on the y axis
# yaxis = F, radius is correct on the x axis
# DATE WRITTEN: 1994 LAST REVISED: 17 July 1995
# AUTHOR: John R. Wallace (jw@u.washington.edu)
#
#
z <- (0:360 * pi)/180
pin <- par()$pin
usr <- par()$usr
adj <- (pin[2]/pin[1])/((usr[4] - usr[3])/(usr[2] - usr[1]))
if(yaxis) {
x <- sin(z) * rx * adj
y <- cos(z) * ry
}
else {
x <- sin(z) * rx
y <- (cos(z) * ry * 1)/adj
}
xprime <- x * cos(theta) + y * sin(theta) + cx
yprime <- y * cos(theta) - x * sin(theta) + cy
if(!pointsonly) {
if(fill)
density <- -1
else density <- 0
polygon(xprime, yprime, density = density, ...)
invisible()
}
else list(x = xprime, y = yprime)
}
John Wallace [jrw@fish.washington.edu]
Wed 5/19/99 1:07 PM
[S] Another circle program
|