私の質問は、このSOリンクで尋ねられた質問と非常によく似ています
jfreechart を使用して同じカテゴリの棒グラフを一緒に作成する
以下の例を実行すると、チャートが画像として取得されます (画像が添付されています)。
DefaultCategoryDataset dataset = new DefaultCategoryDataset();
dataset.setValue(2, "Lesson-1", "27-sep-2012");
dataset.setValue(7, "Lesson-2", "27-sep-2012");
dataset.setValue(4, "Lesson-3", "27-sep-2012");
JFreeChart chart = ChartFactory.createBarChart(
"BarChart using JFreeChart", "Student sample", "Marks sample", dataset,
PlotOrientation.VERTICAL, true, true, false);
chart.setBackgroundPaint(Color.yellow);
chart.getTitle().setPaint(Color.blue);
CategoryPlot plot = chart.getCategoryPlot();
BarRenderer br = (BarRenderer) plot.getRenderer();
br.setItemMargin(0.7);
try {
ChartUtilities.saveChartAsJPEG(new File(
"D:/jfreeimages/sample.jpeg"), chart, 500, 300);
} catch (IOException e) {
e.printStackTrace();
}
2012 年 9 月 27 日の日付については、すべてのバーをクラスター化し、隙間なく表示する必要があります。彼らの多くは、barRenderer (以下のコード) のマージンを少なくすることを提案しました。
BarRenderer br =(BarRenderer) plot.getRenderer() ;
br.setItemMargin(0.0);
しかし、これによりバーのサイズが非常に大きくなります。添付の画像のみのようにバーのサイズが必要です。助けてください。