Проблема заключается в BarPainter
, который вы используете. По умолчанию в JFreeChart версии 1.0.13 используется GradientBarPainter
, что добавляет металлический вид панели. Если вы хотите «старый» вид, решение состоит в том, чтобы использовать StandardBarPainter
.
final CategoryPlot plot = chart.getCategoryPlot();
((BarRenderer) plot.getRenderer()).setBarPainter(new StandardBarPainter());
Это должно сделать это.
В качестве альтернативы, если вы хотите использовать BarRenderer
JFreeChart, вы можете заставить его использовать StandardBarPainter
, вызвав статический метод setDefaultBarPainter()
перед инициализацией вашего средства визуализации.
final CategoryPlot plot = chart.getCategoryPlot();
BarRenderer.setDefaultBarPainter(new StandardBarPainter());
((BarRenderer) plot.getRenderer()).setBarPainter(new BarPainter());
Если вам нужен больший контроль над графиком, вы всегда можете построить его с нуля вместо использования ChartFactory
, но для этого требуется много дополнительного кода.