Shapefile ke SVG dengan ArcMap (sambil mempertahankan atribut negara)


10

Adakah yang tahu cara mengekspor shapefile Natural Earth 1: 110m ke SVG dengan ArcMap sambil mempertahankan atribut negara?

Dari SVG saya akan mencoba mengubahnya lagi ke RaphaelJS untuk mencapai sesuatu seperti:

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

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

Tapi saya baru dalam hal ini, jadi saya tidak yakin bagaimana cara melakukannya. Mungkin tidak ada cara selain secara manual menambahkan kode negara untuk JS?

Jawaban:


4

Saya membuat peta-peta itu, sehingga saya bisa menggambarkan proses yang saya gunakan. Mungkin ada cara yang lebih baik untuk melakukannya, tetapi inilah cara kerjanya untuk saya:

  1. Di ArcMap, beri setiap negara lapisan masing-masing. Saya menggunakan ID lapisan dari tabel atribut lapisan sumber dan kemudian sedikit 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...
    

    Ini menciptakan layer baru untuk setiap negara yang dinamai dengan kode ISO dua huruf stat itu.

  2. Saya mengekspor dari ArcMap sebagai Adobe Illustrator. Di Illustrator, layer-layer tersebut dipertahankan dan diberi nama seperti di ArcMap. Di Illustrator saya mengukur bentuk dengan tepat dan melakukan beberapa penyesuaian pada gaya. Kemudian ekspor sebagai SVG.

  3. Jalankan skrip perl ini untuk mengonversi file SVG ke Raphael.js friendly json: https://gist.github.com/2655111

Dan itu dia!


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.