Как создать новую карту для jvectormap jquery plugin? - программирование
Подтвердить что ты не робот

Как создать новую карту для jvectormap jquery plugin?

Я хочу знать, как создать или создать карту для jquery plugin jvectormap http://jvectormap.com/

В проекте есть несколько карт: http://jvectormap.com/maps/

но мне нужна карта с Австралией и Новой Зеландой, разделенной штатами. В документации в github https://github.com/bjornd/jvectormap говорится, что любой может сгенерировать карту с помощью этой команды:

python \
    path/to/converter.py \
    path/to/geo-data.shp \
    path/to/resulting-map.js \
    --width 900 \
    --country_name_index 4 \
    --where "ISO = 'USA'" \
    --codes_file path/to/codes-en.tsv \
    --insets '[{"codes": ["US-AK"], "width": 200, "left": 10, "top": 370}, {"codes": ["US-HI"], "width": 100, "left": 220, "top": 400}]' \
    --minimal_area 4000000 \
    --buffer_distance -3000 \
    --simplify_tolerance 1000 \
    --longtitude0 10w \
    --name us

но я думаю, что это устаревает, потому что я загрузил http://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/, как говорится в документации, но, конечно же, не работал.

Может ли кто-нибудь сказать мне, как создать карту с австралиями и новой зеленью, разделенную состояниями для jvectormap?

спасибо

4b9b3361

Ответ 1

На всякий случай кому-то понадобится то же самое. Чтобы запустить конвертер, вам понадобится (эта инструкция действительна для среды Windows):

python ^
   converter.py ^
   ../../ne_10m_admin_1_states_provinces_shp.shp ^
   test-map.js ^
   --width 400 ^
   --where "ISO_3166_2 = 'RU-' and code_hasc!=''" ^
   --country_name_index 12 ^
   --country_code_index 18 ^
   --minimal_area 4000000 ^
   --buffer_distance -0.5 ^
   --simplify_tolerance 10000 ^
   --longitude0 54.8270 ^
   --name russia

  • запустите оболочку OSGeo4W (она будет добавлена ​​в меню запуска)
  • запустить makemap.bat
  • наслаждаться сгенерированной картой

В качестве примера выход, содержащий эту скрипту с русской картой, сгенерированной с использованием описанных выше шагов http://jsfiddle.net/dyP4c/3/

О параметрах (что я знаю)

где условие используется для фильтрации форм из шейп файла с использованием атрибутов шейп файла

simplify_tolerance повлияет на качество и размер карты

country_name_index индекс атрибута REGION NAME в шейп файле или столбце в файле с разделителями разделов, если используется код_file

country_code_index индекс атрибута REGION CODE в шейп файле или столбце в файле с разделителями разделов, если используется код_file

code_file - это файл с разделителями разделов (если вы хотите использовать имена/коды не из шейп файла)

longitude0 - долгота области (использовала это)

имя - это имя карты

P.S.: OSGeo4W пакет имеет приятный Quantium GIS Browser для просмотра атрибутов шейп файла. Вы можете попробовать искать другие шейп файлы в Интернете (а не только естественные данные) для преобразования в jvectormap

Ответ 2

Взгляните на команду, которую вы написали. Это похоже только на карты США:

--insets '[{"codes": ["US-AK"], "width": 200, "left": 10, "top": 370}, {"codes": ["US-HI"], "width": 100, "left": 220, "top": 400}]' \

Я не знаю ответа, но вот где я начну исправлять проблему