8

時間 (HH:MM:SS) を X 軸、数値 (Y 軸) として折れ線グラフを表示しようとしています。「時間」列から読み取られたデータは、HH:MM:SS の形式です。チャートが構築されるデータセットを作成する方法は次のとおりです

for (Row row : sheet)
{
    Double sar_Val = poiGetCellValue(sar);
    Double date_val = poiGetCellValue(date);

    if(sar_Val != null && date_val != null)
    {
        series1.add(date_val,sar_Val);
    }
    dataset.addSeries(series1);
}

//上記のコードの poiGetCellValue は、データ型に基づいて double を返します

問題は、HH:MM:SS 形式の「時間」列の下のデータを double 値に変換し、add 関数が double 値のみを取るため、series1 を入力する必要があることです。値を double に変換したら X 軸に時間を表示する方法 または、XYseries に追加する他の方法はありますか?

4

1 に答える 1

11

データセットのとではなく、 を使用しorg.jfree.data.time.TimeSeriesて値を格納します。XYSeriesTimeSeriesCollection

RegularTimePeriodこれにより、2 つの double ではなく、 a と double を追加できます。RegularTimePeriod によって実装されるDayため、最終的なコードは次のようになります。

private XYDataset createDataset() {
    TimeSeries series1 = new TimeSeries("Data");
    Date date = new Date();
    series1.add(new Day(date),46.6);
    TimeSeriesCollection dataset = new TimeSeriesCollection();
    dataset.addSeries(series1);
    return dataset;
}
于 2012-10-11T11:35:20.140 に答える