Pregunta

datos Mashups de O'Reilly en I como fuente de inspiración, estoy tratando de trazar un puñado de direcciones en un archivo de formas de Condado de Salt Lake, Utah encontró aquí .

Tengo geoTable trama de datos:

> geoTable
         address        Y         X EID
1    130 E 300 S 40.76271 -111.8872   1
2    875 E 900 S 40.74992 -111.8660   2
3   2200 S 700 E 40.72298 -111.8714   3
4    702 E 100 S 40.76705 -111.8707   4
5 177 East 200 S 40.76518 -111.8859   5
6    702 3rd ave 40.77264 -111.8683   6
7   2175 S 900 E 40.72372 -111.8652   7
8   803 E 2100 S 40.72556 -111.8680   8

Y he coaccionado en un objeto EVENTDATA:

> addressEvents<-as.EventData(geoTable,projection=NA)
> addressEvents
         address        Y         X EID
1    130 E 300 S 40.76271 -111.8872   1
2    875 E 900 S 40.74992 -111.8660   2
3   2200 S 700 E 40.72298 -111.8714   3
4    702 E 100 S 40.76705 -111.8707   4
5 177 East 200 S 40.76518 -111.8859   5
6    702 3rd ave 40.77264 -111.8683   6
7   2175 S 900 E 40.72372 -111.8652   7
8   803 E 2100 S 40.72556 -111.8680   8

Así que parece que tengo todo lo que necesito para trazar, pero no su trabajo. Cuando cargo el shapefile y la trama utilizando

addPoints(addressEvents,col="red",cex=.5)

Me quedo mirando un archivo de forma vacía. Además, cuando intento y correr contra mi findPolys objeto EVENTDATA, devuelve NULL.

> findPolys(addressEvents,myShapeFile)
NULL

¿Cómo puedo hacer este trabajo? Pude completar el tutorial O'Reilly sin ningún problema y estoy teniendo dificultades para averiguar dónde voy mal aquí. No sé si es el archivo de formas, mi trama de datos, o whateverelse.

Estos son los comandos que utilizo para importar los datos y archivo de forma

slc<-read.table('~/utah.txt',sep=',',header=TRUE,strip.white=TRUE,stringsAsFactors=FALSE)

myShapeFile<-importShapefile("/Users/neil/Downloads/SGID93_DEMOGRAPHIC_CensusTracts2000/SGID93_DEMOGRAPHIC_CensusTracts2000",readDBF=TRUE)
¿Fue útil?

Solución

También es posible que desee mirar a estas preguntas relacionadas, especialmente en las respuestas de Eduardo:

Otros consejos

Parece que PBSmapping utiliza algunas heurísticas de crudo a trabajar a cabo la proyección del archivo .prj. (Ver ayuda (importShapefile)). Yo personalmente no entiendo todas las cosas dentro de un archivo PRJ pero el uso de este sitio web www.spatialreference.org Calculo sus partidos mapa

http://www.spatialreference.org/ref/epsg/26912/

En cuanto tenga un nuevo archivo de forma que parece que es el sistema de proyección en este sitio web y, a continuación, busque la cadena proj4, que en este caso es "+ Proj = UTM + zona = 12 + ellps = GRS80 + datum = NAD83 + unidades = m + no_defs"

(Como he dicho no sé PBSmapping, pero se puede leer esto en el uso de la siguiente manera MapTools)

library(maptools)
sf=readShapeSpatial("SGID93_DEMOGRAPHIC_CensusTracts2000.shp",proj4string=CRS("+proj=utm +zone=12 +ellps=GRS80 +datum=NAD83 +units=m +no_defs"))

y luego convertir a LatLong utilizando

library(rgdal)

sftransformed=spTransform(sf,CRS("+proj=longlat"))

y

plot (sftransformed, ejes = T)

da una parcela con las unidades adecuadas en los ejes.

No estoy seguro si PBSmapping entiende una cadena proj4? Parece que no sea honesto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top