2011-09-24 20 views
5

Con frecuencia me encuentro haciendo algunos análisis en R y luego quiero hacer un mapa rápido. La función plot() estándar hace un trabajo razonable de rápido, pero rápidamente encuentro que necesito ir a ggplot2 cuando quiero hacer algo que se vea bien o que tenga requisitos de simbología más complejos. Ggplot2 es genial, pero a veces es engorroso convertir un SpatialPolygonsDataFrame en el formato requerido por Ggplot2. Ggplot2 también puede ser un poco lento cuando se trata de mapas grandes que requieren proyecciones específicas.R enlaces para Mapnik?

Parece que debería ser capaz de usar Mapnik para trazar objetos espaciales directamente desde R, pero después de agotar mi Google-fu, no puedo encontrar ninguna evidencia de enlaces. En lugar de suponer que tal cosa no existe, pensé en verificar aquí si alguien sabe de un enlace R-Mapnik.

Respuesta

1

Preguntas frecuentes sobre Mapnik explicitly mentions Python bindings - al igual que el wiki - sin mención de R, por lo que creo que está en lo cierto al decir que actualmente no existen enlaces R (patrocinados por Mapnik) para Mapnik.

Puede obtener una respuesta más satisfactoria (o al menos más detallada) preguntando en el Mapnik users list. Ellos sabrán con certeza si existen proyectos para hacer enlaces R para Mapnik, y si no, su interés puede incitar a alguien a investigar la posibilidad de generar enlaces para R.

1

Escribiría los SpatialWotsitDataFrames en Shapefiles y luego lanzaría un Script de Python Mapnik. Incluso podría usar R para generar la secuencia de comandos de Python (el paquete 'brew' es útil para crear archivos a partir de plantillas e insertar valores de R).

+0

También he pensado en esto, pero me encantaría poder hacerlo todo de R. Sin embargo, esto definitivamente es una solución. – Peter

+0

Es posible que pueda usar Rcpp para realizar algunas vinculaciones R, pero probablemente sea aún más fácil volcar cosas en shapefiles. – Spacedman

+0

Echaré un vistazo a Rcpp. Empecé a mirar a SWIG, pero luego mi cerebro comenzó a doler, así que me detuve. – Peter