Гистограмма: все ячейки имеют длину 0

Это делается путем делегирования событий. Событие будет привязываться к элементу-оболочке, но будет делегировано элементу селекторного класса. Вот как это работает.

$('.wrapper-class').on("click", '.selector-class', function() {
    // Your code here
});

Примечание:

Элемент-оболочка-оболочка может быть любым ex. документа, тела или вашей обертки. Упаковщик должен уже существовать.

2
задан Gerardo Furtado 28 March 2019 в 01:04
поделиться

1 ответ

Если вы установите domain генератора гистограммы, он должен быть массивом :

Доменный бин определяется как массив [min, max], где min - минимальное наблюдаемое значение, а max - максимальное наблюдаемое значение.

Однако, у вас есть это:

var binMaker = d3.histogram()
    .domain([xScale.domain()])

Поскольку xScale.domain() сам по себе является массивом:

[0,10]

В итоге вы получите:

var binMaker = d3.histogram()
    .domain([[0, 10])

Что, очевидно, не сработает. Итак, просто сделайте:

var binMaker = d3.histogram()
    .domain(xScale.domain())
    //no square brackets--^

Вот демо:

m_data = [6, 9, 5, 6, 7, 5, 8, 7, 4, 7, 4, 3, 5, 8, 5, 4, 8, 7, 6, 9, 4, 6, 8];
var xScale = d3.scaleLinear()
  .domain([0, 10])
  .nice();
var binMaker = d3.histogram()
  .domain(xScale.domain())
  .thresholds(xScale.ticks(10));
var bins = binMaker(m_data);
console.log(bins);
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/5.7.0/d3.min.js"></script>

0
ответ дан Gerardo Furtado 28 March 2019 в 01:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: