Я пытаюсь интегрировать скрипт d3 в веб-приложение gwt.Однако я не могу понять, как запустить d3 из JSNI.Код d3 хорошо работает отдельно;Мне интересно, это может быть потому, что код d3 не может получить доступ к элементу div?
Я придерживаюсь следующего подхода:
+ добавьте теги 'script' в заголовок основного html-файла, чтобы указать библиотеки d3
+ Поместите следующий код d3 в метод с использованием JSNIвызовите метод в onModuleLoad ().код d3 обращается к основному элементу div, который также использует rootPanel.
/*-{
var w = 960, h = 800;
var svg = d3.select("#chart2")
.append("svg:svg")
.attr("width", w)
.attr("height", h)
.append("svg:g")
.attr("transform", "translate(40, 0)");
svg.selectAll("circle")
.data([ 32, 57, 112, 293 ])
.enter()
.append("circle")
.attr("cy", 90)
.attr("cx", String)
.attr("r", Math.sqrt);
}-*/;
Я также попробовал другой подход;Я добавил еще один элемент div внутри HTML-элемента в классе Java и попытался получить доступ ко второму div из d3.
В обоих случаях ничего не отображается.Любая идея, как это может работать, пожалуйста?