2011-12-22 3 views
2

私は、建物の消費量に基づいてチャートを生成するために折れ線グラフコンポーネントを使用しています。 1か月の期間内に1時間の建物の消費量に基づいて可能なグラフを想像してみてください。それは30日に相当する消費30ポイントを持っています。 カテゴリの軸ラベルに問題があります。相当な量のポイントがあれば、ラベルは判読不能になります。どうすればいいのですか?iReport線グラフカテゴリラベル

よろしく

答えて

2

は「ライン」のチャートを使用しないでください。代わりに、 "時系列"チャートを使用してください。

すべての点のチャート作成に関する問題を自動的に処理しますが、読み込み可能な数だけにラベルを付けます。また、均一な間隔で配置されていないデータポイントによって生成される問題も処理します。

EDIT:受信データが日付ではなく文字列の場合は、余分な作業があります。時系列チャートはTimes(よく、日付)を期待しています。 DateStringを実際の日付にキャストする必要があります。しかし、仕事は小さく、利益は大きい。次のような変数を使用してください:new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse($F{MyDateString})

+0

感謝を報告しています。問題は、「時系列」チャートは、期間式としてjava.util.Dateを必要とし、すべてのデータが文字列として認識されるxmlデータソースを使用していることです。文字列を日付に解析しようとすると、対応する例外がスローされます。 – nunopato

+0

はい、余分なものが1つ追加されます。しかし、それを克服することは難しいことではありません。ストリングをキャストするだけです。私は答えを例で編集します。 – mdahlman

0

はJASPERで折れ線グラフにラベルを生成するには、このコードを使用して、ご返信用

else if(jasperChart.getChartType() == JRChart.CHART_TYPE_LINE) { 
    LineAndShapeRenderer line = (LineAndShapeRenderer) chart.getCategoryPlot().getRenderer(); 
    line.setBaseItemLabelsVisible(Boolean.TRUE); 
    line.setBaseItemLabelGenerator((CategoryItemLabelGenerator) new StandardCategoryItemLabelGenerator()); 
} 
関連する問題