JavaFX TimeAxis (в режиме реального времени) - PullRequest
0 голосов
/ 27 ноября 2018

Мне нужно построить LineChart в JavaFX, у которого есть ось X со значениями времени (график быстро обновляется в реальном времени).Я беру пример из Essembly (диаграмма в реальном времени) и пытаюсь сделать метки времени в оси X, но никаких результатов из-за того, что значения определены не правильно ... Я много искал, но не было успешных результатов.Помогите пожалуйста найти линейную диаграмму с осью времени.Реализация - только JavaFX

1 Ответ

0 голосов
/ 27 ноября 2018

Некоторое время назад у меня было то же самое.Я не все помню, и у меня нет времени думать об этом прямо сейчас, но я надеюсь, что это поможет вам.

public void createChart(){
        series.getData().clear();
        int l=(int)Math.round(this.position-(this.tailleSerie/this.zoom));


        for(int i=l;i<this.position;i++){
            this.calendar.setTimeInMillis((time-((this.tailleSerie-1)-i))*60000);

            series.getData().add(new XYChart.Data(String.valueOf(this.myFormatter.format(calendar.get(Calendar.HOUR_OF_DAY)))+":"+String.valueOf(myFormatter.format(calendar.get(Calendar.MINUTE))), data.get(this.time-((this.tailleSerie-1)-i))));

        }


        ((ValueAxis<Number>) this.graph.getYAxis()).setLowerBound(min-(5*(max-min))/100);
        ((ValueAxis<Number>) this.graph.getYAxis()).setUpperBound(max+(5*(max-min))/100);

        this.graph.getData().clear();
        this.graph.getData().add(series);




}

Я просто воссоздаю график каждые несколько секунд с «Платформой».runLater (() -> createChart ()); ".

Надеюсь, это поможет вам.

...