Как убрать перекрестие с полей в d3.js?

1

Я пытаюсь понять логику этого графика: 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));

Единственная проблема заключается в том, что эта добавленная линия также отображается в верхнем поле. Я считаю, что проблема здесь - последняя строка этой части кода, но я не уверен, как ее исправить.

Теги:
d3.js

1 ответ

1
Лучший ответ

Вам не нужен 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

  • 0
    Спасибо большое за вашу помощь.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню