使用ArcMap将Shapefile转换为SVG(同时保留国家/地区属性)


10

有谁知道如何使用ArcMap将Natural Earth 1:110m形状文件导出到SVG,同时保留国家/地区属性?

从SVG,我将尝试再次将其转换为RaphaelJS,以实现类似以下目的:

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

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

但是我对所有这些都是新手,所以我不确定该怎么做。也许没有办法,只能手动添加JS的国家/地区代码?

Answers:


4

我创建了这些地图,因此可以描述我使用的过程。可能有更好的方法,但是这对我有用:

  1. 在ArcMap中,为每个状态赋予自己的图层。我使用源图层属性表中的图层ID,然后使用一些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...
    

    这将为每个以该状态的两个字母的ISO代码命名的州创建一个新层。

  2. 我从ArcMap导出为Adobe Illustrator。在Illustrator中,将保留和命名图层,就像在ArcMap中一样。在Illustrator中,我适当地调整了形状的大小,并对样式进行了一些微调。然后导出为SVG。

  3. 运行此perl脚本以将SVG文件转换为Raphael.js友好的json:https ://gist.github.com/2655111

就是这样!


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.