NVD3.js Получить положение точки данных на диаграмме SVG
Я использую nvd3.jsлиния с диаграммой фокуса (видоискатель) модель для проекта. Существуют настройки, которые мне нужно добавить в этот пример, например, различные типы наложения аннотаций в верхней части графика.
Есть несколько способов решения этой проблемы:
1. Я мог бы расширить графические модели nvd3, чтобы создать модель, которая делает то, что мне нужно (сейчас это кажется большой работой)
2. Я могу найти подходящие интерфейсы в существующих моделях диаграмм nvd3 и написать свой собственный материал для d3 для создания аннотаций (это казалось проще, и поэтому я пошел по этому пути)
Я выяснил большинство того, что мне нужно, за исключением того, как получить положение экрана svg на графике для значения из моего xScale (d3.linear.scale ()). Как только у меня будет правильная позиция экрана на графике nvd3, я могу наложить аннотацию в правильных местах.
Вопрос: Кто-нибудь знает, есть ли в диаграммах nvd3 интерфейс для расчета положения экрана диаграммы по значению xScale? Если нет простого интерфейса, как я могу решить эту проблему?
Спасибо
ОБНОВИТЬ: Похоже, у меня была вся правильная информация для начала благодаря комментарию Ларса. Но это не имело смысла, так как, кажется, есть ошибка при установке xAxis с такими датами:
chart.xAxis
.tickFormat(function(d) { return d3.time.format('%Y-%m-%d')(new Date(d)); });
Когда вы пытаетесь получить xAxis.scale (), вы получаете дату назад вместо функции масштаба. Так что это не было очевидно.