【问题标题】:How to construct and use TimeSeriesCollections如何构造和使用 TimeSeriesCollections
【发布时间】:2011-02-25 15:42:49
【问题描述】:

我想在图表的 X 轴上显示一些日期,here 据说我必须使用 TimeSeriesCollections 对象

似乎我必须将 TimeSeries 添加到 TimeSeriesCollections,并且必须使用 RegularTimePeriod 构造 TimeSeries... 我有点迷茫……

你能解释一下我必须做什么吗? 如果可能的话,你能提供一些示例代码吗? 谢谢

【问题讨论】:

    标签: java jfreechart time-series


    【解决方案1】:

    TimeSeriesCollectionsTimeSeries 对象组成

    使用此方法将系列添加到数据集中:addSeries(TimeSeries series)

    创建TimeSeries 对象时。用时间和价值观填充它们。这是一个粗略的例子:

    TimeSeries ts= new TimeSeries("Name of Series");
    ts.addOrUpdate(new Year(2008), 42);
    ts.addOrUpdate(new Year(2009), 51);
    ts.addOrUpdate(new Year(2010), 97);
    ts.addOrUpdate(new Year(2011), 45);
    

    为了让轴很好地显示日期,您必须执行以下操作:

    XYPlot plot = chart.getXYPlot();
    DateAxis axis = new DateAxis();
    plot.setDomainAxis(axis);
    axis.setDateFormatOverride(new SimpleDateFormat("yyyy"));
    

    【讨论】:

    • 这有点问题。在图表中,年份由一些奇怪的值表示(介于 1.200.000.000.000 和 1.300.000.000.000 之间)。例如,我如何插入特定日期而不是年份?
    • 对于特定日期,请使用不同的 RegularTimePeriod 类。我在示例中使用了 Year,但您可以使用以下任何一种:jfree.org/jfreechart/api/javadoc/org/jfree/data/time/…
    • 我找到了使用一天而不是一年的方法。但我还是不明白你在上一段代码中写了什么……那个“情节”是什么?
    • @Maik,将绘图变量添加到第二个示例中。
    猜你喜欢
    • 2020-05-06
    • 2011-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多