我正在尝试将 XYPointerAnnotation
实现为 TimeSeries
图表。但我不知道图表如何找到要绘制的 y 值。代码:
final TimeSeries series = new TimeSeries("asdfas");
Hour hour = new Hour();
series.add(2,hour), 123);
TimeSeriesCollection collection = new TimeSeriesCollection();
collection.addSeries(series);
double temp = Double.parseDouble(
series1.getTimePeriod(series1.getItemCount()-1).toString());
XYPointerAnnotation pointer1 = new XYPointerAnnotation(
series1.getValue(series1.getItemCount() - 1).toString(), temp, 00.0);
JFreeChart chart = ChartFactory.createTimeSeriesChart(
"1", "2", "3", collection, true, true, false);
如何将 y 值从 TimeSeries
解析到 XYPointerAnnotation
?
最佳答案
给定一个TimeSeries
,
TimeSeries series = new TimeSeries("Data");
找到感兴趣的项目,
TimeSeriesDataItem item = series.getDataItem(series.getItemCount() - 1);
根据时间段和值创建注释,
double x = item.getPeriod().getFirstMillisecond();
double y = item.getValue().doubleValue();
XYPointerAnnotation a = new XYPointerAnnotation("Bam!", x, y, 5 * Math.PI / 8);
并将其添加到绘图中,
XYPlot plot = (XYPlot) chart.getPlot();
plot.addAnnotation(a);
关于java - TimeSeries JFreeChart 中的 XYPointerAnnotation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18186466/