function addBar(id, domain, bar) {
let box = d3.select(document.getElementById(id));
let canvas = box.select("canvas");
let canvasWidth = parseInt(canvas.style("width"),10);
let canvasHeight = parseInt(canvas.style("height"),10);
let x=d3.scaleLinear()
.domain([domain.xMin, domain.xMax])
.range([0,canvasWidth]);
let y=d3.scaleLinear()
.domain([domain.yMin, domain.yMax])
.range([canvasHeight,0]);
let svg = box.select(".svg-overlay");
if (svg.empty()) {
svg = box.append("svg")
.attr("class","svg-overlay")
.style("position","absolute")
.style("z-index",2)
.style("top","0px")
.style("left","0px")
.attr("width", canvasWidth)
.attr("height",canvasHeight);
}
let barCoords = [[x(bar[0][0]),y(bar[0][1])],[x(bar[1][0]),y(bar[1][1])]];
let barPath = svg.select(".bar");
if (barPath.empty()) {
svg.append("path")
.attr("class","bar")
.attr("fill", "none")
.attr("stroke", "Gray")
.attr("stroke-width", 4)
.style("opacity",0.5)
.attr("d",d3.line()(barCoords));
} else {
barPath.attr("d",d3.line()(barCoords))
}
}