我正在尝试创建一个图表,其 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();
}
}
它的结果是可以接受的。双倍值消失了,但刻度仍然存在。
最佳答案
设置一个 tickLabelFormatter在 Axis 上。
关于charts - 如何让 JavaFX 图表 NumberAxis 只显示整数值,而不是 double 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23841268/