Я обнаружил, что AutoRange на оси Y не работает должным образом, когда значения диаграммы очень малы.См. Пример:
Работает хорошо (нормальные значения):
Не работает хорошо (небольшие значения):
Я действительно могу нажать несколько раз, чтобы увеличить его, вот максимальный экстент:
Как вы можете видеть
- Автоматический диапазон не применяется автоматически
- Я не могу увеличить масштаб, чтобы заполнить весь диапазон Y
- Индикатор MACDДиаграмма имеет ту же проблему
Я создаю ось Y следующим образом, когда создаю модель:
this.yAxis = builder.newNumericAxis()
.withAxisId(PRICES)
.withAutoRangeMode(AutoRange.Once)
// .withDrawMinorGridLines(true)
// .withDrawMajorGridLines(true)
// .withMinorsPerMajor(4)
// .withMaxAutoTicks(8)
// .withGrowBy(new DoubleRange(0.000001d, 0.000001d))
.withLabelProvider(new NumericLabelProviderPrice(currency))
.build();
Эксперимент с различными параметрами withGrowBy
дал ограниченные результаты.
Как мне заставить Y AutoRange работать автоматически, независимо от того, являются ли значения диаграммы большими (> 1000) или маленькими (<0,01)? </p>