Как сделать так, чтобы на диаграмме JavaFX NumberAxis отображалось только целое число, а не двойное
Я пытаюсь создать диаграмму, для которой yAxis предназначен для показа номера сотрудника, поэтому он должен показывать только целые числа.
Но я обнаружил, что это не так просто, как я уже пытался yAxis.setTickUnit(1), но он не будет работать, когда значения малы (и т. Д. Максимальное значение равно 3, он все равно покажет 0,5,1,5..., Я только хочу значение тика, как 1,2,3,4..)
Как я мог достичь этого?
Согласно ответу @jewelsea, я попробовал это (в javafx 2.2 jdk7)
class IntegerStringConverter extends StringConverter<Number>{
public IntegerStringConverter() {
}
@Override
public String toString(Number object) {
if(object.intValue()!=object.doubleValue())
return "";
return ""+(object.intValue());
}
@Override
public Number fromString(String string) {
Number val = Double.parseDouble(string);
return val.intValue();
}
}
Это результат приемлемый. Двойные значения ушли, но галочки все еще есть.
1 ответ
Вы можете установить значения NumberAxis(double lowerBound, double upperBound, double tickUnit) с помощью конструктора. Это отлично работает для JaxaFX 8, на случай, если такие люди, как я, все еще ищут это.
Источник: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/chart/NumberAxis.html