Ограничение домена при масштабировании или панорамировании в D3.js

Я реализовал простую линейную диаграмму D3.js, которую можно увеличивать и панорамировать. Он основан на превосходном примере Стивена БаннашаВот.

Домен моих данных [0, n] в измерении х.

Как я могу ограничить масштабирование и панорамирование в этом домене, используя встроенное поведение масштабирования (то есть, используя события mousewheel)?

Я хочу запретить пользователям панорамирование за 0 на нижнем конце или n на верхнем, например, они никогда не должны видеть отрицательные значения на оси x и хотят ограничить масштабирование одним и тем же окном.

Примеры, которые я нашел на основе работы Джейсона Дэвиса с использованием экстента ([...], [...], [...]), похоже, больше не работают в версии 2.9.1. К сожалению, в настоящее время поведение масштабирования является одной из немногих функций, которые не описаны в остальной документации API.

Любые указатели приветствуются.

PS.I have posted the same question on the D3.js mailing list but did not get a response: https://groups.google.com/d/topic/d3-js/w6LrHLF2CYc/discussion, Извиняюсь за кросс-постинг.

Ответы на вопрос(2)

Ваш ответ на вопрос