NVD3 и D3: что привело к тому, что мои данные не были связаны со всплывающей подсказкой? - PullRequest
0 голосов
/ 13 декабря 2018

У меня есть ситуация, когда я нашел решение, но я хотел бы понять, почему мое решение работает.Я работаю с multiBarChart NVD3 и реализую дискретный вид гистограммы, когда пользователь отображает данные только в одном измерении.

В этом процессе этот блок кода был тем, что я использовал для нацеливания на прямоугольник SVG и измененияего цвет:

d3.select("svg .nv-series-0").select("rect:nth-child(2)").attr("style","fill: #d34356; stroke: #d34356;");

Приведенный выше код корректно изменил цвет, но удалил (или повредил) данные, привязанные к событиям прямоугольника и наведения мыши для этого прямоугольника, больше не работали.Без этой настройки событие mousover сработало корректно, показывая данные для прямоугольника.

Я изменил выбор d3 в коде так:

d3.select("svg .nv-series-0 rect:nth-child(2)").attr("style","fill: #d34356; stroke: #d34356;");

И это работает, данные для событий наведения мышивсе еще там для прямоугольника.

Может кто-нибудь объяснить, как и почему исходный d3.select, за которым следует другой .select, повлиял на данные, которые были переданы для события mouseover? *

...