Shapefile a SVG con ArcMap (al tiempo que conserva los atributos del país)

10

¿Alguien sabe cómo exportar el archivo de forma Natural Earth 1: 110m a SVG con ArcMap manteniendo los atributos del país?

Desde SVG, intentaré convertirlo nuevamente a RaphaelJS para lograr algo como:

http://backspace.com/mapapp/javascript_world/

http://backspace.com/mapapp/javascript_world/js/world_570.js

Pero soy nuevo en todo esto, así que no estoy seguro de cómo hacerlo. ¿Quizás no hay otra forma que agregar manualmente los códigos de país para el JS?

Mark Boulder
fuente

Respuestas:

4

Creé esos mapas, para poder describir el proceso que utilicé. Probablemente haya una mejor manera de hacerlo, pero así es como funciona para mí:

  1. En ArcMap, asigne a cada estado su propia capa. Utilizo los ID de capa de la tabla de atributos de la capa de origen y luego un poco de ArcMap Python:

    import arcgisscripting
    gp = arcgisscripting.create()
    gp.MakeFeatureLayer_management('ne_110m_admin_0_countries','AF','"ABBREV" = \'Afg.\'')
    gp.MakeFeatureLayer_management('ne_110m_admin_0_countries','AO', '"ABBREV" = \'Ang.\'')
    gp.MakeFeatureLayer_management('ne_110m_admin_0_countries','AL', '"ABBREV" = \'Alb.\'')
    ...etc...
    

    Esto crea una nueva capa para cada estado nombrado con el código ISO de dos letras de esa estadística.

  2. Exporto desde ArcMap como Adobe Illustrator. En Illustrator, las capas se conservan y nombran como estaban en ArcMap. En Illustrator, dimensiono las formas adecuadamente y hago algunos ajustes en los estilos. Luego exportar como SVG.

  3. Ejecute este script perl para convertir el archivo SVG a Raphael.js friendly json: https://gist.github.com/2655111

¡Y eso es eso!

John Emerson
fuente
1

No estoy seguro de si esto funcionará para usted (supongo que es mucho más fácil de usar en un sistema Linux), pero este proyecto parece prometedor, especialmente si conoce a Perl:

https://github.com/kbh3rd/shptosvg/wiki

Stev_k
fuente