I was using filled.contour, when I went back and just used contour it worked fine -- so there is NOT an easy way to get filled contour to work with an overlay?
--j -- Jonathan A. Greenberg, PhD NRC Research Associate NASA Ames Research Center MS 242-4 Moffett Field, CA 94035-1000 Phone: 415-794-5043 AIM: jgrn3007 MSN: [EMAIL PROTECTED] -----Original Message----- From: Roger Bivand [mailto:[EMAIL PROTECTED] Sent: Thursday, May 11, 2006 12:37 AM To: Jonathan Greenberg Cc: [email protected] Subject: Re: [R] Contour plot overlayed with line plot On Wed, 10 May 2006, Jonathan Greenberg wrote: > Duncan (and others): > > I figured it out (thank you!), I ended up doing a > contour(interp(x,y,z)), and I did figure out lines(), but I can't get the > output of lines to "sync" with the proper coordinates of the contour() > output (its overlaying the line over the contour plot, but not in the proper > location). Any ideas? To fake your input data from the built-in volcano data set: set.seed(1) NAs <- sample(1:length(volcano), 5000) volcanoNAs <- volcano is.na(volcanoNAs) <- NAs crds <- 10*(which(!is.na(volcanoNAs), arr.ind=TRUE)) crdsz <- cbind(crds, c(volcanoNAs[!is.na(c(volcanoNAs))])) giving a three-column matrix of two coordinates and elevation values. library(akima) new_volcano <- interp(x=crdsz[,1], y=crdsz[,2], z=crdsz[,3]) str(new_volcano) to see what it looks like, by default a 40 by 40 grid, and contour(new_volcano, asp=1) points(x=crdsz[,1], y=crdsz[,2], pch=4, col="grey") plots the points on the same coordinate system. What are the specific command you are using, say in relation to this toy data set? Bets are off if you use filled.contour(); that lets you insert extra graphics, but the have to be done in the function arguments, not afterwards. > > --j > > -- > > Jonathan A. Greenberg, PhD > NRC Research Associate > NASA Ames Research Center > MS 242-4 > Moffett Field, CA 94035-1000 > Phone: 415-794-5043 > AIM: jgrn3007 > MSN: [EMAIL PROTECTED] > > -----Original Message----- > From: Duncan Murdoch [mailto:[EMAIL PROTECTED] > Sent: Wednesday, May 10, 2006 8:41 PM > To: Jonathan Greenberg > Subject: Re: [R] Contour plot overlayed with line plot > > On 5/10/2006 11:24 PM, Jonathan Greenberg wrote: > > Keeping with the "newbie" questions -- I'm having a hard time figuring out > > how to order the data -- I have x,y,z triplets, but I'm getting this > error: > > > > ...increasing 'x' and 'y' values expected > > > > I saw in the documentation they should be ordered, but a) how do I do > this, > > and b) do I need to sort by x first then y? > > I think you don't understand the requirements of contour(). It wants > the z values to be in an M x N matrix, and x to be a vector of length N, > y a vector of length M. (Or did I get those transposed? It's late...) > The x values are the x coordinates of each column of z, the y values are > the y coordinates of them. > > If you have triplets (x,y,z) of data that you want to plot as a surface, > you need to convert them to the form above, e.g. using the interp() > function from the akima package. > > If I completely misunderstood your question: you can use the sort() > function to order x and y. > > Duncan Murdoch > > > > Thanks! > > > > --j > > > > -- > > > > Jonathan A. Greenberg, PhD > > NRC Research Associate > > NASA Ames Research Center > > MS 242-4 > > Moffett Field, CA 94035-1000 > > Phone: 415-794-5043 > > AIM: jgrn3007 > > MSN: [EMAIL PROTECTED] > > > > -----Original Message----- > > From: Duncan Murdoch [mailto:[EMAIL PROTECTED] > > Sent: Wednesday, May 10, 2006 7:43 PM > > To: Jonathan Greenberg > > Subject: Re: [R] Contour plot overlayed with line plot > > > > On 5/10/2006 7:46 PM, Jonathan Greenberg wrote: > >> I apologize for what may be a newbie question: I have two sets of data, > > one > >> is X,Y,Z data that I'd like to make a contour plot of (Z defining the > >> contours), and a second set of X,Y data (Y as a function of X) which I > > would > >> like made into a line plot OVERLAYED on the contour plot (X and Y from > > both > >> plots are in the same units and will have overlapping values). Any > >> suggestions on how to do this in R? Thanks!\ > > > > Use contour() first in the usual way, then use the lines() function to > > add lines to it. (Or points(), etc.) > > > > Duncan Murdoch > > > > ______________________________________________ > > [email protected] mailing list > > https://stat.ethz.ch/mailman/listinfo/r-help > > PLEASE do read the posting guide! > http://www.R-project.org/posting-guide.html > > ______________________________________________ > [email protected] mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html > -- Roger Bivand Economic Geography Section, Department of Economics, Norwegian School of Economics and Business Administration, Helleveien 30, N-5045 Bergen, Norway. voice: +47 55 95 93 55; fax +47 55 95 95 43 e-mail: [EMAIL PROTECTED] ______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
