[英]How to make JavaFX Chart NumberAxis only show Integer value,not double
我正在嘗試創建一個圖表,其中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 。
您可以使用構造函數設置NumberAxis(double lowerBound,double upperBound,double tickUnit)值。 這適用於JaxaFX 8,以防像我這樣的人仍在尋找這個。
資料來源: https : //docs.oracle.com/javase/8/javafx/api/javafx/scene/chart/NumberAxis.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.