Nvd3: Как предотвратить отображение графика между -1 и 1, если все значения y 0?

Имейте небольшую измененную версию модели linePlusBarChart(), когда данные прохода, у которых есть все значения y, установленные на нуль, оси Y показывают мне диапазон от 1 до -1. Можно ли установить диапазон между 0 и 1?

Попробовали с chart.yAxis.scale().domain([0]); и chart.forceY([0]), но ничего.

Ответ 1

forceY заставляет домен включать значения, которые вы передаете, он не сокращает домен, созданный из данных. Чтобы установить определенный домен, вы устанавливаете chart.yDomain([0,1]). Однако это установило бы домен [0,1] независимо от ваших данных. Насколько я понимаю, вы хотите изменить поведение только тогда, когда все ваши значения y равны 0.

Для этого попробуйте chart.forceY([1]). Теперь, когда NVD3 пытается выяснить домен, он увидит как нулевые значения из данных, так и 1 из инструкции силы. Таким образом, у него будет действующий домен, и он не должен будет составлять домен путем добавления и вычитания 1 из значения данных.