2012-10-25 14 views
10

Próbuję wykreślić wykres czasu rzeczywistego, z osią czasu, ale znalazłem konstruktora LineChart tylko podpisu.JavaFX LineChart czasu rzeczywistego z osią czasu

LineChart(Axis<X> xAxis, Axis<Y> yAxis) 

Myślę, że osadzanie wykresu jfree w javafx nie jest właściwym rozwiązaniem.

Chcę kilka funkcji jfree w javafx LineChart, jest to możliwe?

+1

Fantastic pytanie! Przydatna odpowiedź! Straszni moderatorzy! Po co zamykać doskonale dobre pytania za pomocą poprawnych odpowiedzi? Cieszę się, że zamknięte pytania wciąż pojawiają się w wyszukiwaniach. –

Odpowiedz

18

Pobierz Ensemble próbka z http://www.oracle.com/technetwork/java/javafx/samples/index.html

Istnieje kilka przykładów w nim dynamicznych wykresów, na przykład "Zaawansowany wykres giełdowy". Możesz spojrzeć na ich kod źródłowy bezpośrednio w aplikacji.

enter image description here

Aby pokazać na osi czasu można użyć ciąg i dateFormatter:

BarChart<String, Number> chart = new BarChart<>(new CategoryAxis(), new NumberAxis()); 

    final XYChart.Series<String, Number> series1 = new XYChart.Series<>(); 
    chart.getData().addAll(series1); 

    SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss"); 
    Date date = new Date(); 
    for (int i = 0; i <= 10; i += 1) { 
     date.setTime(date.getTime() + i * 11111); 
     series1.getData().add(new XYChart.Data(dateFormat.format(date), Math.random() * 500)); 
    } 
+1

Tak, ten kod jest w porządku, ale problem polega na tym, że chcę pokazać rzeczywisty czas zamiast zwiększanych wartości w osi czasu !!! –

+0

zobacz zaktualizowaną odpowiedź –

+1

dokładnie ... to, czego chcę –

0

Klasa org.jfree.chart.demo.TimeSeriesChartDemo1 jest dołączona do dystrybucji. Jest on przedstawiony na stronie demo, a jego source ilustruje użycie metody fabrycznej ChartFactory.createTimeSeriesChart(). Istnieje powiązany przykład: here.

+0

siano co zasugerowałeś ?? Nie rozumiem ... –

+1

Myślę, że powinieneś użyć 'createTimeSeriesChart()'. –

+0

@ShantanuBanerjee: [tag: jfreechart] działa z [tag: javafx]; zmień model, np. 'TimeSeries', a widok sam się zaktualizuje. – trashgod

Powiązane problemy