Непроверенная ошибка призыва к данным при добавлении точек данных в ряд - PullRequest
0 голосов
/ 23 июня 2019

Я делаю линейную диаграмму XY, и при добавлении точки данных я получаю предупреждение о непроверенном вызове

XYChart.Series series = new XYChart.Series();
series.setName("Temp Res graph");
for(int i = 1; i<800; i++) {
        XYChart.Data dp = new XChart.Data(i,Integer.parseInt(getTemp(i)));
        series.getData().add(dp);
        lineChart.getData().add(series);
}

Это предупреждение, но когда я запускаю код, я получаю кучу ошибокКажется, это вызвано следующими строками:


Exception in thread "JavaFX Application Thread" java.lang.IllegalArgumentException: Duplicate series added

1 Ответ

2 голосов
/ 23 июня 2019

Непроверенное предупреждение от использования вами необработанных типов . И XYChart.Series, и XYChart.Data являются общими типами, но вы не указываете никаких общих параметров. Исходя из значений, которые вы передаете конструктору Data, вы должны использовать Number для обоих параметров.

Что касается вашей ошибки, вы добавляете series к lineChart в конце каждой итерации цикла for. Переместите этот код за пределы цикла (до или после).

// Add generic parameters (uses the <> operator on the right)
XYChart.Series<Number, Number> series = new XYChart.Series<>();
series.setName("Temp Res graph");
for(int i = 1; i<800; i++) {
    // Add generic parameters (uses the <> operator on the right)
    XYChart.Data<Number, Number> dp = new XChart.Data<>(i,Integer.parseInt(getTemp(i)));
    series.getData().add(dp);
}
lineChart.getData().add(series); // outside loop

Обратите внимание, что LineChart также является универсальным типом; не забудьте также указать для него общие параметры: LineChart<Number, Number>.

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