我正在尝试绘制带有时间轴的实时图表,但我发现LineChart
构造函数只有签名。
LineChart(Axis<X> xAxis, Axis<Y> yAxis)
我认为在 javafx 中嵌入 jfree 图表不是一个合适的解决方案。
我想要 javafx 中的一些 jfree 功能LineChart
,这可能吗?
我正在尝试绘制带有时间轴的实时图表,但我发现LineChart
构造函数只有签名。
LineChart(Axis<X> xAxis, Axis<Y> yAxis)
我认为在 javafx 中嵌入 jfree 图表不是一个合适的解决方案。
我想要 javafx 中的一些 jfree 功能LineChart
,这可能吗?
从http://www.oracle.com/technetwork/java/javafx/samples/index.html下载 Ensemble 示例
其中有几个动态图表的示例,例如“高级股票折线图”。您可以直接在应用程序中查看他们的源代码。
要在轴上显示时间,您可以使用字符串和 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()
。这里有一个相关的例子。