问题在图表JavaFX中显示数据值

时间:2014-07-10 15:55:47

标签: java charts javafx

我实际上正在使用JavaFX,我想要使用的折线图来显示每个系列中每个数据的值。 这是我正在使用的代码,但它不会显示任何内容。

private void showChartData(){
    for(Series<String,Number> s:olChartData){
        for(Data d:s.getData()){
            Node n=d.getNode();
            StackPane sp=new StackPane();
            sp.setPrefSize(30, 30);
            Label l=new label(String.valueOf(Math.round((double)d.YValueProperty().getValue())));
            l.setTextFill(Color.BLUE);
            l.getStyleClass().addAll("default-color0", "chart-line-symbol", "chart-series-line");
            l.setStyle("-fx-font-size: 20; -fx-font-weight:bold;");
            l.setMinSize(Label.USE_PREF_SIZE, Label.USE_PREF_SIZE);
            sp.getChildren().setAll(l);
            d.setNode(sp);
            sp.toFront();
        }
    }
}

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。

private void showChartData() {
    for (Series<String, Number> s : olChartData) {
        for (Data d : s.getData()) {
            StackPane sp = (StackPane) d.getNode();
            Label l = new Label(String.valueOf(Math.round((double) d.YValueProperty().getValue())));
            l.setStyle("-fx-font-size: 10;");
            l.setMinSize(Label.USE_PREF_SIZE, Label.USE_PREF_SIZE);
            sp.getChildren().add(l);
            sp.toFront();
            sp.setCursor(Cursor.TEXT);
        }
    }

}