Ниже приведен код, чтобы иметь круг и масштабировать его при помощи мыши, используя D3. Он делает то, что он должен делать, но также берет cricle в другое место, то есть круговые шкалы и прыжки (переводит) в другое место. Я не могу понять причину этого.Элемент SVG Circle прыгает при преобразовании масштаба
this.node = this.chartLayer.append("g")
.attr("class", "nodes")
.selectAll("circle")
.data(data.nodes)
.enter().append("circle")
.attr("r", 10)
.attr("fill", (d) => { return this.colors(d.group); })
.on('mouseover', function(d) {
d3.select(this).attr('transform', 'scale(' + 2 + ')');
})
большой ответ @ Херардо-Фуртадо. Мне нравится решение радиуса, но есть ли способ применить масштабный коэффициент к радиусу при наведении курсора мыши и вернуться к нормальному курсу мыши? – cpz
Я думаю, что мне нужно будет отслеживать узел мыши и его радиус и использовать сохраненные значения для возврата назад. – cpz
Я написал этот ответ, чтобы показать вам проблему со шкалой. Если у вас есть направленная по силе диаграмма, просто измените радиус на основе базы данных или любого жестко заданного значения. Проверьте изменение. –