coords2coords {geoR} | R Documentation |
Operations on Coordinates
Description
Functions for shifting, zooming and envolving rectangle of a set of coordinates.
Usage
coords2coords(coords, xlim, ylim, xlim.ori, ylim.ori)
zoom.coords(x, ...)
## Default S3 method:
zoom.coords(x, xzoom, yzoom, xlim.ori, ylim.ori, xoff=0, yoff=0, ...)
## S3 method for class 'geodata'
zoom.coords(x, ...)
rect.coords(coords, xzoom = 1, yzoom=xzoom, add.to.plot=TRUE,
quiet = FALSE, ...)
Arguments
coords , x |
two column matrix or data-frame with coordinates. |
xlim |
range of the new x-coordinates. |
ylim |
range of the new y-coordinates. |
xlim.ori |
optional. Range of the original x-coordinates, by default the range of the original x-coordinates. |
ylim.ori |
optional. Range of the original y-coordinates, by default the range of the original y-coordinates. |
xzoom |
scalar, expanding factor in the x-direction. |
yzoom |
scalar, expanding factor in the y-direction. |
xoff |
scalar, shift in the x-direction. |
yoff |
scalar, shift in the y-direction. |
add.to.plot |
logical, if |
quiet |
logical, none is returned. |
... |
further arguments to be passed to |
Value
coords2coords and zoom.coords |
return an object of the same type as given in the argument
|
rect.coords |
returns a matrix with the 4 coordinates of the rectangle defined by the coordinates. |
Author(s)
Paulo Justiniano Ribeiro Jr. paulojus@leg.ufpr.br,
Peter J. Diggle p.diggle@lancaster.ac.uk.
See Also
Examples
foo <- matrix(c(4,6,6,4,2,2,4,4), nc=2)
foo1 <- zoom.coords(foo, 2)
foo1
foo2 <- coords2coords(foo, c(6,10), c(6,10))
foo2
plot(1:10, 1:10, type="n")
polygon(foo)
polygon(foo1, lty=2)
polygon(foo2, lwd=2)
arrows(foo[,1], foo[,2],foo1[,1],foo1[,2], lty=2)
arrows(foo[,1], foo[,2],foo2[,1],foo2[,2])
legend("topleft",
c("foo", "foo1 (zoom.coords)", "foo2 (coords2coords)"), lty=c(1,2,1), lwd=c(1,1,2))
## "zooming" part of The Gambia map
gb <- gambia.borders/1000
gd <- gambia[,1:2]/1000
plot(gb, ty="l", asp=1, xlab="W-E (kilometres)", ylab="N-S (kilometres)")
points(gd, pch=19, cex=0.5)
r1b <- gb[gb[,1] < 420,]
rc1 <- rect.coords(r1b, lty=2)
r1bn <- zoom.coords(r1b, 1.8, xoff=90, yoff=-90)
rc2 <- rect.coords(r1bn, xz=1.05)
segments(rc1[c(1,3),1],rc1[c(1,3),2],rc2[c(1,3),1],rc2[c(1,3),2], lty=3)
lines(r1bn)
r1d <- gd[gd[,1] < 420,]
r1dn <- zoom.coords(r1d, 1.7, xlim.o=range(r1b[,1],na.rm=TRUE), ylim.o=range(r1b[,2], na.rm=TRUE),
xoff=90, yoff=-90)
points(r1dn, pch=19, cex=0.5)
text(450,1340, "Western Region", cex=1.5)