jvectormap отсутствующие страны

Я использую jvectormap уже несколько недель, но не хватает многих стран. Кто-нибудь знает, где я могу получить информацию о странах в формате jvectormap?

Я искал в гугле часами, но ничего не нашел.

Есть карта jqvmap с еще несколькими странами, но она в другой проекции и некоторых стран тоже не хватает.

На данный момент я использую:

jvectormap-world-en.js

и я не могу справиться с конвертером python.

У кого-нибудь есть источник для этого?


person Laokoon    schedule 03.02.2013    source источник
comment
Какие страны вас интересуют, чего не хватает?   -  person Mads Hansen    schedule 03.02.2013
comment
меня интересуют все страны. Это проблема. но вот список пропавших стран, которые я знаю: Ватикан, Монако, Науру, Тувалу, Сан-Марино, Лихтенштейн, Маршалловы острова, Сент-Китс и Невис, Маледивы, Мальта, Гренада, Сент-Винсент и Гренадины, Микронезия, Барбадос, Антигуа и барбуда, сейшельские острова, палау, андорра, сент-люсия, сингапур, кирибати, тонга, доминика, маврикий, бахрейн, сан-томе и принсипи, ... и все это отсутствует. :-) мне нужна полная карта   -  person Laokoon    schedule 03.02.2013
comment
Для тех, кто найдет это в будущем, я сделал версию карты по умолчанию с включенными микространами здесь, которые могут оказаться полезными.   -  person matt    schedule 22.09.2018


Ответы (4)


Проблема у вас шире, чем просто отсутствие некоторых стран на карте. Если вы просто добавите на карту кучу маленьких стран, большинство из них не будет видно даже при максимальном увеличении. Решение, предложенное этой демонстрацией, заключается в использовании функции маркеров jVectorMap для представления небольших стран.

Вам нужно назначать коды вместо индексов для маркеров, чтобы методы данных работали правильно. Для этого просто используйте хэш вместо массива при определении маркеров:

//instead of this
markers: [
  {latLng: [41.90, 12.45], name: 'Vatican City'},
  {latLng: [43.73, 7.41], name: 'Monaco'},
  ...
]

//use this
markers: {
  "VA": {latLng: [41.90, 12.45], name: 'Vatican City'},
  "MC": {latLng: [43.73, 7.41], name: 'Monaco'},
  ...
}
person bjornd    schedule 04.02.2013
comment
я знаю это демо. Я также пытался использовать его. но у меня есть данные в бэкэнде, что дает мне некоторые ISO-коды с номером. теперь мне нужно заполнить регионы И маркеры новой заливкой. для регионов это просто: mo.series.regions[0].setValues(values); но как мне сделать это для маркеров, потому что маркеры не поддерживают это?: mo.series.markers[0].setValues(values); - person Laokoon; 04.02.2013
comment
@Laokoon Смотрите редактирование. По поводу реалистичности карты. Это всегда компромисс между размером и количеством деталей. Карты на сайте — это то, что может использовать обычный разработчик. Если вам нужно что-то конкретное, вы можете использовать конвертер и создать сверхдетальную карту размером в несколько мегабайт. по размеру. - person bjornd; 04.02.2013

Вы можете добавить следующие строки в файл jquery-jvectormap-world-mill.js для некоторых из отсутствующих стран.

    "BH":  {"path": "M548 215 L549 215 L549 216 L548 216 Z", "name": "Bahrain"},
    "MV":  {"path": "M622 291 L624 291 L624 293 L622 293 Z", "name": "Maldives"},
    "SC":  {"path": "M564 301 L566 301 L566 303 L564 303 Z", "name": "Seychelles"},
    "MU":  {"path": "M571 347 L573 347 L573 349 L571 349 Z", "name": "Mauritius"},
    "SG":  {"path": "M680 280 L682 280 L682 282 L680 282 Z", "name": "Singapore"},
    "PW":  {"path": "M779 260 L781 260 L781 262 L779 262 Z", "name": "Palau"}
person Mohsen Gorzin    schedule 07.08.2018

наконец-то я нашел векторную карту со всеми странами на викимедиа:

wikimedia.org

person Laokoon    schedule 15.01.2014
comment
не могли бы вы объяснить, как использовать этот файл SVG - person Wasim A.; 28.01.2014
comment
вам нужно преобразовать SVG-элемент в объекты. Это не сложно, потому что у каждой страны есть свой svg-элемент и правильное название в нем. - person Laokoon; 29.01.2014
comment
я добавил эту новую строку в существующий код... sp: {путь: M103.97,1.331L103.82,1.265L103.65,1.326L103.705,1.423L103.818,1.447L103.909,1.416L103.961, 1.392L103.996, 1.365L103.97, 1.331z, название: Сингапур }, - person Wasim A.; 29.01.2014
comment
@ВасимА. В вашем файле неправильный синтаксис. Пожалуйста, замените пути на пути. Затем загрузится карта. - person Arek Kostrzeba; 27.01.2017

Вот обновленный файл JS со всеми странами

https://gist.github.com/paulsheldrake/69d8817ab616aa81919b9dc438359ccf

person Paul Sheldrake    schedule 14.05.2020