1

いくつかの日付に沿ってX値を表したいXYチャートがあります。データセットの作成は簡単です。

XYSeries serie = new XYSeries("valor");
for(int i=0;i<lista.size();i++){
    serie.add(i,lista.get(i).getValue());

}
dataset.addSeries(serie);

ここで、serie.addは引数(y.value、x.value)として使用します。私は時間とともにx値を表していますが、それは配列リストの単なるインデックスとして表示されます(明らかに、最初のパラメーターとしてiを使用します)。私の質問は、Y値として日付(または文字列)を表示するにはどうすればよいですか?これは、たとえば次のように棒グラフで実行できることを知っています。

DefaultCategoryDataset dataSet = new DefaultCategoryDataset();
        dataSet.addValue(51, "series", "Colonel Forbin");
        dataSet.addValue(92, "series", "The Lizards");

このようなことは私がする必要があることです、あなたが助けてくれることを願っています、ありがとう

4

1 に答える 1

1

ここに示すように、シリーズの範囲値がJavaエポックからのミリ秒を表す場合、aDateAxisは値を正しく表示する必要があります。

NumberAxis domain = new NumberAxis("X");
DateAxis range = new DateAxis("Y");
domain.setAutoRangeIncludesZero(false);
XYItemRenderer renderer = new XYLineAndShapeRenderer(true, false);
XYPlot plot = new XYPlot(dataset, domain, range, renderer);
JFreeChart chart = new JFreeChart(
    "Title", JFreeChart.DEFAULT_TITLE_FONT, plot, false);

補遺:動的に変化する…タグを設定したいだけです。

あなたが望むように見えます、ここSymbolAxisで見られます。

于 2013-02-08T15:55:41.317 に答える