wrap_text_nchar = (text_element, max_width, line_height, unit = "em") => {
if (!line_height) line_height = 1.1;
const text_array = wrap_text_array(text_element.text(), max_width);
text_element.text(null)
.selectAll("tspan")
.data(text_array).enter()
.append("tspan")
.attr("x", text_element.attr("x"))
.attr("y", text_element.attr("y"))
.attr("dy", (d, i) => `${i * line_height}${unit}`)
.text(d => d);
}