Hi There,
Raster package makes this an easy work!! I didn't have to wallow through my
long code. Thank you to all those who contributed.
Regards
Ogbos

On 22 November 2010 18:43, Robert J. Hijmans <r.hijm...@gmail.com> wrote:

> Ogbos,
>
> You can do this:
>
> library(raster)
> xy<-cbind(x, y)
> r <- rasterize(xy, raster(nrow=120, ncol=60), fun=sum)
>
> rb <- rev(rainbow(255,s=1,v=1,start=0,end=7/12,gamma=1,alpha=1))
> image(r, col=rb, ylab = "Longitude", xlab="Latitude" )
>
>
> Or, in your code, instead of this
> z = t(grid3)
>
> this might work:
> z =  <- t(grid3[nrow(grid3):1,])
>
> Robert
>
> On Sun, Nov 21, 2010 at 10:51 PM, ogbos okike <ogbos.ok...@gmail.com>
> wrote:
> > Dear all,
> > I tried to use the code below to generate 3 X 3 grid of
> latitude-longitude
> > data. I use image to view the grid. However, latitude and longitude are
> on
> > the wrong axes.  Thus, I want to swap the axes. I tried to swap x and y
> in:
> > image(x, ..) that did not help. I also wish to add color code to the
> plot.
> > Thanks for kind help.
> >
> >  portion of the data:
> > -3.3851  -65.3236
> >  -3.2696  -65.2364
> >  -3.2679  -65.2349
> > -17.6404  164.7025
> >  -4.8285  148.8214
> >  2.6477  -67.6568
> >  -0.2350  -73.4833
> > -16.8655   40.9587
> >  8.1179  -61.6474
> >  -0.2755   93.3401
> > -17.1733  119.9011
> >  1.1245  -69.7640
> > -20.0035 -149.3088
> >  -3.4200  177.8753
> >  3.0133  -67.5590
> >  15.4684  -21.9331
> > -17.6166  120.2656
> > -17.3888  165.9368
> > -17.6953  164.7335
> >  -1.8623  -74.0017
> >  -3.3562  -71.1195
> > -11.5775  130.1496
> >
> > code:
> > xy<-matrix(c(x, y), ncol=2)
> >
> > # 3 deg grid for counts
> > grid3 <- matrix(0, nrow=120, ncol=60)
> >
> > # accumulate counts of points in cells
> > for (i in 1:nrow(xy)) {
> >  if (xy[i, 1] == 180)
> >  ix = nrow(grid3)
> >  else
> >  ix <- floor((xy[i,1] + 180) / 3) + 1
> >
> >  if (xy[i, 2] == 90)
> >  iy = ncol(grid3)
> >  else
> >  iy <- floor((xy[i,2] + 90) / 3) + 1
> >
> >  # catch any subscript errors
> >  tryCatch(
> >  grid3[ix, iy] <- grid3[ix, iy] + 1,
> >  error = function(e) cat("Ignoring point out of bounds:", xy[i,], "\n") )
> > }
> > rb<-rev(rainbow(255,s=1,v=1,start=0,end=7/12,gamma=1,alpha=1))
> > image( x = seq(-88.5, 88.5, 3), y = seq(-178.5, 178.5, 3), z = t(grid3),
> > col=rb, ylab = "Longitude", xlab="Latitude" )
> >
> >        [[alternative HTML version deleted]]
> >
> > _______________________________________________
> > R-sig-Geo mailing list
> > R-sig-Geo@stat.math.ethz.ch
> > https://stat.ethz.ch/mailman/listinfo/r-sig-geo
> >
>

        [[alternative HTML version deleted]]

_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@stat.math.ethz.ch
https://stat.ethz.ch/mailman/listinfo/r-sig-geo

Reply via email to