Я пытаюсь понять логику этого графика: http://bl.ocks.org/d3noob/6eb506b129f585ce5c8a, сделанный D3noob. Я попытался добавить линию фокусировки из круга фокусировки вправо перед маркой. Я нашел частичное решение, которое:
// append the x line_up
focus.append("line")
.attr("class", "x_track_line_up")
.style("stroke", "black")
.style("stroke", "3,3")
.style("opacity", 0.9)
.attr("y1", 0)
.attr("y2", height);
//call the x line
focus.select(".x_track_line_up")
.attr("transform",
"translate(" + x(d.date) + "," +
y(d.close) + ")")
.attr("y2", -height - y(d.close));
Единственная проблема заключается в том, что эта добавленная линия также отображается в верхнем поле. Я считаю, что проблема здесь - последняя строка этой части кода, но я не уверен, как ее исправить.
Вам не нужен translate
. Просто делать:
focus.select(".x_track_line_up")
.attr("x1", x(d.date))
.attr("x2", x(d.date))
.attr("y2", y(d.close));
Вот обновленные bl.ocks: http://bl.ocks.org/anonymous/dd1bb9adda42e4bc9768e9a35432197a