gpt4 book ai didi

java - DynamicTimeSeriesCollection 中的 XYTextAnnotation

转载 作者:行者123 更新时间:2023-11-29 03:30:56 25 4
gpt4 key购买 nike

我正在尝试在 DynamicTimeSeriesCollection 中实现 XYTextAnnotation。我不知道如何在 DynamicTimeSeriesCollection 中找到系列的 X 值。到目前为止我的代码:

DynamicTimeSeriesCollection dataset = new DynamicTimeSeriesCollection(1, 60, new Minute());
final JFreeChart result = ChartFactory.createTimeSeriesChart(TITLE, "A", "B", dataset, true, true, false);
float[] series1Small = new float[10];
dataset.setTimeBase(new Minute(1, 1, 1, 1, 2013));
dataset.addSeries(series1Small,0,"1");
JFreeChart result = ChartFactory.createTimeSeriesChart(TITLE, "Время", "Платежи", dataset, true, true, false);
final XYPlot plot = result.getXYPlot();
-----------------------------------------------------------Below line doesn't work.

TimeSeriesDataItem item1 = series1.getDataItem(series1.getItemCount() - 1);
createAnnotation(item1,plot);

这是一个用于使用 TimeSeriesCollection 进行注释的函数。

 public static void createAnnotation(TimeSeriesDataItem item,XYPlot plot)
{
double xAnnotation = item.getPeriod().getFirstMillisecond();
double yAnnotation = item.getValue().doubleValue();
XYTextAnnotation annotation = new XYTextAnnotation(item.getValue().toString(), xAnnotation, yAnnotation);
annotation.setFont(new Font("Arial",Font.BOLD,11));
plot.addAnnotation(annotation);
}

最佳答案

从这个 example 开始,我在 createChart() 中添加了以下几行以获得下图:

double x = dataset.getXValue(0, COUNT - 1);
double y = dataset.getYValue(0, COUNT - 1);
String s = dataset.getY(0, COUNT - 1).toString();
XYTextAnnotation a = new XYTextAnnotation(s, x, y);
a.setFont(a.getFont().deriveFont(24f));
plot.addAnnotation(a);

text annotation image

关于java - DynamicTimeSeriesCollection 中的 XYTextAnnotation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18327071/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com