plot = {
let pentaData = data;
pentaData.push(data[0]);
const margin = {top: 50, right: 50, bottom: 50, left: 50},
width = 300,
height = 300;
const y = d3.scaleLinear()
.range([ margin.top + height, margin.top ])
.domain([d3.min(data, d=>d[1]), d3.max(data, d=>d[1])]);
const x = d3.scaleLinear()
.range([ margin.left, margin.left + width ])
.domain([d3.min(data, d=>d[0]), d3.max(data, d=>d[0])]);
const line = d3.line()
.x(d => x(d[0]))
.y(d => y(d[1]));
const svg = d3.create("svg")
.attr("viewBox", [0, 0, width + margin.left + margin.right, height + margin.top + margin.bottom])
.attr("stroke-linecap", "round")
.attr("stroke-linejoin", "round");
svg.append("g")
.selectAll("penta")
.data([pentaData])
.enter()
.append("path")
.attr("d", d => line(d))
.attr("stroke", "#dddddd")
.attr("fill", "none")
.attr("stroke-width", 1);
svg.append("g")
.selectAll("diag")
.data(diag)
.enter()
.append("path")
.attr("d", d => line(d))
.attr("stroke", "#dddddd")
.attr("fill", "none")
.attr("stroke-dasharray", 5)
.attr("stroke-width", 1);
svg.append('g')
.selectAll("dot1")
.data(data)
.enter()
.append("circle")
.attr("cx", function (d) { return x(d[0]); } )
.attr("cy", function (d) { return y(d[1]); } )
.attr("r", 1);
return svg.node();
}