simpleChart = {
const w = margin + width + margin,
h = margin + height + margin,
svg = d3
.create("svg")
.attr("width", w)
.attr("height", h)
.attr("viewBox", [0, 0, w, h]),
axis = d3.axisBottom(myScale),
chart = svg.append("g").attr("transform", `translate(${[margin, margin]})`);
chart
.append("g")
.attr("transform", `translate(${[0, height]})`)
.call(axis);
chart
.selectAll()
.data(myData)
.enter()
.each(function (d, i) {
d3.select(this)
.append("rect")
.attr("x", myScale(d.KmBegin))
.attr("y", rectHeight)
.attr("width", myScale(d.KmEnd - d.KmBegin))
.attr("height", rectHeight)
.attr("fill", i === 0 ? "#ccc" : "#888")
.attr("stroke", "blue")
.append("title")
.text(d.Type);
});
return svg.node();
}