我的Codepen中有以下代码能够渲染sprite标志(来自CSS),但它不在应该基于节点位置的位置。
事实上,我能够从顶部的标志sprite中拖动节点!
查看某些console.logs,调用节点时,d.x
的{{1}}和d.y
位置似乎没有通过。
我不确定如何解决此问题
function ticked()
答案 0 :(得分:0)
你非常接近!我花了很长时间才弄明白。
我最终在项目目录中创建了一个填充了国家/地区png的标记文件夹。然后使用国家/地区代码动态加载它们。
以下是我解决问题的方法:
const node = svg.selectAll(".flag")
.data(data.nodes)
.enter().append("image")
.attr("xlink:href", d => require(`./flag/${d.code}.png`))
.attr("width", radius)
.attr("height", radius)
.call(d3.drag()
.on("start", dragstarted)
.on("drag", dragged)
.on("end", dragended))