Я использую StackedBarChart в API jfreechart для отображения записей no.records в таблице, которая поступает из базы данных. Есть 82 таблицы, которые я ставлю на оси домена и нет. записей по оси Range. Но проблема, с которой я сталкиваюсь, заключается в том, что из-за большого количества таблиц на оси домена ширина полосы уменьшается.
Ниже мой код:
private JFreeChart createChart(CategoryDataset dataset)
{
JFreeChart chart = ChartFactory.createStackedBarChart(
"Stacked Bar Chart", "Task Description", "No_Of_Records", dataset,
PlotOrientation.VERTICAL, true, true, false);
CategoryPlot categoryplot = (CategoryPlot)chart.getPlot();
CategoryAxis categoryaxis = categoryplot.getDomainAxis();
categoryaxis.setMaximumCategoryLabelWidthRatio(100);
categoryaxis.setLowerMargin(0.02D);
categoryaxis.setUpperMargin(0.02D);
NumberAxis numberaxis = (NumberAxis)categoryplot.getRangeAxis();
numberaxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
numberaxis.setRange(0.0D, 1000D);
BarRenderer barrenderer = (BarRenderer)categoryplot.getRenderer();
barrenderer.setDrawBarOutline(false);
GradientPaint gradientpaint = new GradientPaint(0.0F, 0.0F, Color.blue, 0.0F, 0.0F, new Color(0, 0, 64));
barrenderer.setSeriesPaint(0, gradientpaint);
return chart;
}
Я пытался использовать
setItemMargin();
setMaxWidth();
setMaximumBarWidth();
на BarRenderer, но все напрасно ..
Любая помощь приветствуется
С уважением,