Цветные страны / континенты с собственными индивидуальными цветами в верхних картах - PullRequest
0 голосов
/ 22 ноября 2018

У меня есть базовое представление карты мира с использованием высоких карт.Если у меня есть два типа карт: страны и континенты .

var data = [
    ['eu', 0], 
    ['oc', 1],
    ['af', 2],
    ['as', 3],
    ['na', 4],
    ['sa', 5], 
];

// Create the chart
Highcharts.mapChart('container', {
    chart: {
        map: 'custom/world-continents'
    },

    title: {
        text: 'Highmaps basic demo'
    },

    subtitle: {
        text: 'Source map: <a href="http://code.highcharts.com/mapdata/custom/world-continents.js">World continents</a>'
    },

    mapNavigation: {
        enabled: true,
        buttonOptions: {
            verticalAlign: 'bottom'
        }
    },

    colorAxis: {
        min: 0
    },

    plotOptions: {
    map: {
        allAreas: false,
    }
  },

    series: [{
        data: data,
        name: 'Random data',
    }]
});

, так я отображаю карты.То, что я хочу сделать, это закрасить некоторые определенные части карты любым цветом, который я хочу.Например,Я просто хочу раскрасить Европу, а не остальную часть карты, или я хочу раскрасить только Францию ​​и оставить остальную часть карты неокрашенной.что я сделал, изменил массив данных, чтобы иметь объекты

data =[{name:"Europe", data:[{code: "eu", color: "#CCCCCC"}]},
{name:"Asia", data:[{code: "as", color: "#4A4444"}]},
{name:"Africa", data:[{code: "af", color: "#AC7070"}]},
{name:"Oceana", data:[{code: "oc", color: "#87AC70"}]},
{name:"North America", data:[{code: "na", color: "#70AC9F"}]},
{name:"South America", data:[{code: "sa", color: "#7094AC"}]}

и изменил joinBy:['code'], но это не имело никакого эффекта.Пожалуйста, дайте мне идеи / предложения о том, как этого добиться.

1 Ответ

0 голосов
/ 22 ноября 2018

Вы можете раскрасить страну / континент, заменив, например:

['eu', 0],

на:

{'hc-key': 'eu', value: 0, color: 'gold'}, 

Тогда эта страна / континент будет соответственно окрашена.hc-key является важной частью создания этой работы (хотя это прямо не указано в API).

Если вы собираетесь раскрашивать на основе других атрибутов, вы можете использовать что-то вроде этого: Раскраска страныв лат-лоу highmap

Пример работы JSfiddle для континента: https://jsfiddle.net/ewolden/8jxu6vtw/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...