Ograniczanie domeny podczas powiększania lub przesuwania w D3.js
Zaimplementowałem prosty wykres liniowy D3.js, który można powiększać i przesuwać. Opiera się na doskonałym przykładzie Stephena Bannaschatutaj.
Domena moich danych to [0, n] w wymiarze x.
Jak mogę ograniczyć powiększanie i przesuwanie do tej domeny za pomocą wbudowanego zachowania zoomu (np. Za pomocą zdarzeń kółka myszy)?
Chcę uniemożliwić użytkownikom przesuwanie poza 0 na dolnym końcu lub n na górnym końcu, na przykład nigdy nie powinni być w stanie zobaczyć ujemnych wartości na osi x i chcą ograniczyć powiększanie do tego samego okna.
Przykłady, które znalazłem na podstawie Jason'a Daviesa, działają w dużym stopniu ([...], [...], [...]) wydają się już nie działać w wersji 2.9.1. Niestety zachowanie zoomu jest obecnie jedną z niewielu funkcji, które nie zostały udokumentowane w wyjątkowej dokumentacji API.
Wszelkie wskazówki są mile widziane.
PS.Wysłałem to samo pytanie na liście dyskusyjnej D3.js, ale nie otrzymałem odpowiedzi:https://groups.google.com/d/topic/d3-js/w6LrHLF2CYc/discussion. Przeprosiny za przesyłanie postów.