问题出在
BarPainter您正在使用中。JFreeChart版本1.0.13的默认设置是使用
GradientBarPainter,它将为条形添加金属感。如果您想要“旧”外观,解决方案是使用
StandardBarPainter。
final CategoryPlot plot = chart.getCategoryPlot();((BarRenderer) plot.getRenderer()).setBarPainter(new StandardBarPainter());
那应该做。
另外,如果要使用JFreeChart’s
BarRenderer,则可以在初始化渲染器之前
StandardBarPainter通过调用static方法来强制其使用
setDefaultBarPainter()。
final CategoryPlot plot = chart.getCategoryPlot();BarRenderer.setDefaultBarPainter(new StandardBarPainter());((BarRenderer) plot.getRenderer()).setBarPainter(new BarPainter());
如果您想对图表进行更多控制,则可以始终从头开始构建图表,而不是使用
ChartFactory,但这确实需要大量额外的代码。



