{
const svg = d3
.create('svg')
.attr('viewBox', [0, 0, width, height])
.attr('width', width)
.attr('height', height);
const chart = svg
.append('g')
.attr("transform", `translate(${radius}, ${radius})`);
const arc = d3
.arc()
.innerRadius(innerRadius)
.outerRadius(radius);
chart
.selectAll(null)
.data(pieData)
.enter()
.append('path')
.attr('d', datum => arc(datum))
.attr('fill', datum => colorSeq(datum.index))
.attr("stroke", "black")
.style("stroke-width", "1px");
chart
.selectAll(null)
.data(pieData)
.enter()
.append('text')
.text(datum => datum.data.key)
.attr("transform", datum => `translate(${arc.centroid(datum)})`)
.style("text-anchor", "middle")
.style("font-size", 20);
return svg.node();
}