D3 cartogram.js значения смежных картограмм не отображаются

Я строю смежную картограмму внутренних номеров беженцев, основываясь на этом примере, используя cartogram.js для D3.

Когда я просто использую номер беженца, карта не двигается. Базовый номер беженца

Но когда я добавляю произвольное число к "r" в строке, это работает. И чем выше произвольное число, тем драматичнее изменение. Пример 1 Пример 2

Почему это? Это потому, что некоторые из моих значений равны 0, или потому, что дисперсия слишком высока?

1 ответ

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

// normalize the scale to positive numbers
    var scale = d3.scale.linear()
        .domain([lo, hi])
        .range([1, 1000]);

// tell the cartogram to use the scaled values
    carto.value(function(d) {
        return scale(value(d));
    });
Другие вопросы по тегам