JavaFX в режиме реального времени LineChart с осью времени
Я пытаюсь построить график в реальном времени, с осью времени, но я нашел LineChart
конструктор имеет только подпись.
LineChart(Axis<X> xAxis, Axis<Y> yAxis)
Я думаю, что встраивание диаграммы jfree в javafx не является правильным решением.
Я хочу несколько функций jfree в javafx LineChart
, это возможно?
2 ответов
загрузить образец ансамбля из http://www.oracle.com/technetwork/java/javafx/samples/index.html
в нем есть несколько примеров для динамических диаграмм, например "расширенный график акций". Вы можете взглянуть на исходный код непосредственно в приложение.
чтобы показать время на оси, вы можете использовать string и 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));
}
класс org.jfree.chart.demo.TimeSeriesChartDemo1
входит в комплект поставки. Это изображено в демо, и источник иллюстрирует использование заводского метода ChartFactory.createTimeSeriesChart()
. Существует связанный пример здесь.