Как отобразить XYChart JavaFX только при запуске данных (без отображения 0) - PullRequest
0 голосов
/ 06 ноября 2018

Я отображаю XYChart JavaFX с AxisX и AxisY являются Number.

У меня есть данные, начинающиеся (AxisX) с 103, но график начинается с 0. Итак, я хотел бы, чтобы озвучивание выполнялось только при наличии данных (начните отображать с 103)

Grap XYChart stating 103

Вот моя программа:

//defining the axes
final NumberAxis xAxis = new NumberAxis();
final NumberAxis yAxis = new NumberAxis();
xAxis.setLabel(xLabel);
yAxis.setLabel(yLabel);

//creating the chart
LineChart<Number, Number> lineChart = new LineChart<>(xAxis, yAxis);
lineChart.setTitle(graphTitle);
lineChart.setLegendSide(Side.TOP);

//defining a series
XYChart.Series<Number, Number> series = new XYChart.Series<>();
series.setName(courbeName);

dataFirstCourbe.forEach((value1, value2) -> {
    if (!value2.isNaN()) {
        XYChart.Data<Number, Number> input = new XYChart.Data<>(value1, value2);
        series.getData().add(input);
    }
});

Scene scene = new Scene(lineChart, width, height);
// to add CSS
scene.getStylesheets().add(GraphsGenerator.class.getResource("graphs.css").toExternalForm());

lineChart.setAnimated(false);

lineChart.getData().addAll(series, seriesSecond, seriesThree, seriesFour);

// Supprime les points sur la courbe pour plus de lisibilité
for (XYChart.Series<Number, Number> seriesTmp : lineChart.getData()) {
    //for all series, take date, each data has Node (symbol) for representing point
    for (XYChart.Data<Number, Number> data : seriesTmp.getData()) {
        // this node is StackPane
        StackPane stackPane = (StackPane) data.getNode();
        stackPane.setVisible(false);
    }
}
saveAsPng(scene, fileName);

У вас есть идея?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...