簡體   English   中英

如何使JavaFX Chart NumberAxis只顯示Integer值,而不是double

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM