[英]Transform coordinates from Long Island Zone to Lat. Long format with R
I have the following data set with coordinates in the State Plane Coordinate System from 1983. All coordinates are located in the Long Island Zone (3104). 我在1983年以来的州平面坐标系中有以下带有坐标的数据集。所有坐标都位于长岛区域(3104)。
dput(example)
structure(c(1008031L, 1000852L, 1001869L, 1005306L, 986887L,
998031L, 1018703L, 1014319L, 1016186L, 1006977L, 1006891L, 1000883L,
1001403L, 999812L, 1010077L, 1015918L, 984241L, 1013735L, 986848L,
998243L, 1007312L, 1005663L, 992415L, 999771L, 1006787L, 987215L,
990271L, 1015773L, 999342L, 1007245L, 1007098L, 996980L, 1006886L,
999643L, 1008769L, 1016489L, 1004212L, 986848L, 1001512L, 1002584L,
1001753L, 1004625L, 990725L, 1013435L, 1010795L, 1007509L, 1009419L,
NA, 1009731L, 999007L, 999007L, 1000195L, 985863L, 990064L, 1008192L,
1008306L, NA, 1003280L, 1006541L, 1001264L, 1003844L, 1008345L,
987951L, 999104L, 1009013L, 998201L, 984182L, 1004940L, 1004513L,
999659L, 1018204L, 1005918L, 1008158L, 999629L, 982208L, 1008008L,
983985L, 1003591L, 992033L, 1012144L, 1008285L, 1004196L, 999937L,
1007579L, 1001610L, 1013897L, 985504L, 1003588L, 1000088L, 1002230L,
999304L, 1001393L, 997666L, 999148L, 997501L, 1004670L, 994699L,
1005950L, 994821L, 998160L, 233036L, 228179L, 190702L, 186668L,
173599L, 234924L, 241414L, 182198L, 178657L, 178140L, 242280L,
236356L, 235184L, 238138L, 181374L, 245648L, 149582L, 211309L,
212883L, 176387L, 243183L, 237170L, 149315L, 188471L, 242047L,
215403L, 203844L, 240835L, 233575L, 234932L, 166665L, 174885L,
193881L, 228852L, 244547L, 247336L, 178750L, 212883L, 232231L,
248715L, 182080L, 242885L, 204176L, 251857L, 183147L, 245160L,
235573L, NA, 243613L, 229814L, 229814L, 229856L, 212233L, 225331L,
245037L, 245316L, NA, 229886L, 243541L, 232832L, 250988L, 235949L,
220453L, 192913L, 242619L, 173610L, 150037L, 169914L, 180635L,
229932L, 239783L, 190990L, 244973L, 243379L, 170319L, 246638L,
205857L, 242274L, 215119L, 236944L, 245256L, 183865L, 238365L,
183413L, 241367L, 238753L, 216029L, 249617L, 230093L, 176647L,
227192L, 200533L, 177016L, 187285L, 170971L, 233870L, 176744L,
179753L, 177866L, 227234L), .Dim = c(100L, 2L), .Dimnames = list(
NULL, c("xcoord", "ycoord")))
I need to have the coordinates in lat./long. 我需要有纬度/经度的坐标。 format or wgs84. 格式或wgs84。
Can someone tell me how I do this? 有人可以告诉我我该怎么做吗? Thanks for your help. 谢谢你的帮助。
You can do this with rgdal
and sp
. 您可以使用rgdal
和sp
进行此rgdal
。
library(rgdal)
library(sp)
# I made a guess at the PROJ4 string that your data was in. This is using SRID: 2831
long.island.proj4<-CRS("+proj=lcc +lat_1=41.03333333333333 +lat_2=40.66666666666666 +lat_0=40.16666666666666 +lon_0=-74 +x_0=300000 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs")
# Remove the missing values in your data, and convert to SpatialPoints
sp.points<-SpatialPoints(example[complete.cases(example),],proj4string=long.island.proj4)
# Project to lat/long
spTransform(sp.points,CRS('+proj=longlat'))
Alternative to rgdal
is proj4
package. 替代rgdal
是proj4
软件包。 It has transform
function. 它具有transform
功能。 I guessed the projection being used was http://www.spatialreference.org/ref/epsg/32118/ 我猜想正在使用的投影是http://www.spatialreference.org/ref/epsg/32118/
library(proj4)
dat <- structure(c(1008031L, 1000852L, 1001869L, 1005306L, 986887L,
998031L, 1018703L, 1014319L, 1016186L, 1006977L, 1006891L, 1000883L,
1001403L, 999812L, 1010077L, 1015918L, 984241L, 1013735L, 986848L,
998243L, 1007312L, 1005663L, 992415L, 999771L, 1006787L, 987215L,
990271L, 1015773L, 999342L, 1007245L, 1007098L, 996980L, 1006886L,
999643L, 1008769L, 1016489L, 1004212L, 986848L, 1001512L, 1002584L,
1001753L, 1004625L, 990725L, 1013435L, 1010795L, 1007509L, 1009419L,
NA, 1009731L, 999007L, 999007L, 1000195L, 985863L, 990064L, 1008192L,
1008306L, NA, 1003280L, 1006541L, 1001264L, 1003844L, 1008345L,
987951L, 999104L, 1009013L, 998201L, 984182L, 1004940L, 1004513L,
999659L, 1018204L, 1005918L, 1008158L, 999629L, 982208L, 1008008L,
983985L, 1003591L, 992033L, 1012144L, 1008285L, 1004196L, 999937L,
1007579L, 1001610L, 1013897L, 985504L, 1003588L, 1000088L, 1002230L,
999304L, 1001393L, 997666L, 999148L, 997501L, 1004670L, 994699L,
1005950L, 994821L, 998160L, 233036L, 228179L, 190702L, 186668L,
173599L, 234924L, 241414L, 182198L, 178657L, 178140L, 242280L,
236356L, 235184L, 238138L, 181374L, 245648L, 149582L, 211309L,
212883L, 176387L, 243183L, 237170L, 149315L, 188471L, 242047L,
215403L, 203844L, 240835L, 233575L, 234932L, 166665L, 174885L,
193881L, 228852L, 244547L, 247336L, 178750L, 212883L, 232231L,
248715L, 182080L, 242885L, 204176L, 251857L, 183147L, 245160L,
235573L, NA, 243613L, 229814L, 229814L, 229856L, 212233L, 225331L,
245037L, 245316L, NA, 229886L, 243541L, 232832L, 250988L, 235949L,
220453L, 192913L, 242619L, 173610L, 150037L, 169914L, 180635L,
229932L, 239783L, 190990L, 244973L, 243379L, 170319L, 246638L,
205857L, 242274L, 215119L, 236944L, 245256L, 183865L, 238365L,
183413L, 241367L, 238753L, 216029L, 249617L, 230093L, 176647L,
227192L, 200533L, 177016L, 187285L, 170971L, 233870L, 176744L,
179753L, 177866L, 227234L), .Dim = c(100L, 2L), .Dimnames = list(
NULL, c("xcoord", "ycoord")))
lonlat <- project(dat,
'+proj=lcc +lat_1=41.03333333333333 +lat_2=40.66666666666666 +lat_0=40.16666666666666 +lon_0=-74 +x_0=300000 +y_0=0 +ellps=GRS80 +datum=NAD83 +units=m +no_defs ',
inverse=T)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.