visualization = {
const svg = d3.create('svg').attr('viewBox', [0,0,width, height]).attr('width', width).attr('height', height).style('background', "#333333")
const wrapper = svg.append('g').attr("transform", `translate(${margin.left},${margin.top})`)
const nodes = wrapper.selectAll('circle').data(nodesData).join('circle').attr('r',2).attr('fill', d=> {
if (d.Entity == 'Philippines') {
return 'red'
} else {
return 'white'
}
}).attr('stroke', 'black').attr('stroke-width', 0.2)
nodes.transition().duration((d, i) => Math.random() * i *3).ease(d3.easeLinear).attr('cx', (d) => d.ph_x).attr('cy', (d) => d.ph_y).attr('transform', function(d) {
return `translate(${0},${ph_scale(d.isPh)})`})
nodes.transition().delay(2000).duration((d, i) => Math.random() * i * 10).ease(d3.easeLinear).attr('cx', (d) => d.se_x).attr('cy', (d) => d.se_y).attr('transform', function(d) {
return `translate(${0},${se_scale(d.isSe)})`})
return svg.node()
}