Shapefile thành SVG với ArcMap (trong khi vẫn giữ các thuộc tính quốc gia)


10

Có ai biết cách xuất shapefile Trái đất tự nhiên 1: 110m sang SVG bằng ArcMap trong khi vẫn giữ các thuộc tính quốc gia không?

Từ SVG, tôi sẽ cố gắng chuyển đổi nó một lần nữa sang RaphaelJS để đạt được điều gì đó như:

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

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

Nhưng tôi chưa quen với tất cả những điều này nên tôi không biết phải làm thế nào. Có lẽ không có cách nào khác ngoài việc tự thêm mã quốc gia cho JS?

Câu trả lời:


4

Tôi đã tạo ra những bản đồ đó, vì vậy tôi có thể mô tả quá trình tôi đã sử dụng. Có lẽ có một cách tốt hơn để làm điều đó, nhưng đây là cách nó hoạt động với tôi:

  1. Trong ArcMap, cung cấp cho mỗi trạng thái lớp riêng của nó. Tôi sử dụng ID lớp từ bảng thuộc tính của lớp nguồn và sau đó là một chút 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...
    

    Điều này tạo ra một lớp mới cho mỗi trạng thái được đặt tên bằng mã ISO hai chữ cái của stat đó.

  2. Tôi xuất từ ​​ArcMap dưới dạng Adobe Illustrator. Trong Illustrator, các lớp được bảo tồn và đặt tên như trong ArcMap. Trong Illustrator tôi tăng kích thước các hình phù hợp và thực hiện một số tinh chỉnh cho các kiểu. Sau đó xuất dưới dạng SVG.

  3. Chạy tập lệnh perl này để chuyển đổi tệp SVG thành json thân thiện với Raphael.js: https://gist.github.com/2655111

Và đó là điều đó!


1

Không chắc chắn liệu điều này có phù hợp với bạn không (tôi đoán nó sẽ dễ sử dụng hơn trên hệ thống Linux), nhưng dự án này có vẻ đầy hứa hẹn, đặc biệt là nếu bạn biết bất kỳ Perl nào:

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

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.