我创建了很多图表。在他们每个人中,我都需要打电话
renderer.setSeriesStroke( i, new BasicStroke( 2.0f ) );
对于每个系列。(renderer
是chart.getXYPlot().getRenderer()
(。
我想知道是否有任何方法可以全局设置厚度。
调用渲染器的方法,就像他们在这里所说的那样,并更改setBaseStroke()
setDefaultStroke()
autoPopulateSeriesStroke
标志,就像他们在这里所说的那样。
//renderer.setBaseStroke(new BasicStroke(2.0f));
renderer. setDefaultStroke(new BasicStroke(2.0f));
renderer.setAutoPopulateSeriesStroke(false);
此处和此处的答案显示了迁移到 v1.5 时的新方法名称。
来自Jfreechart 1.5.0
和折线图,使用ChartFactory.createLineChart(...)
JFreeChart lineChart = ChartFactory.createLineChart(...);
LineAndShapeRenderer renderer = (LineAndShapeRenderer) lineChart.getCategoryPlot().getRenderer();
renderer.setAutoPopulateSeriesStroke(false);
renderer.setDefaultStroke(new BasicStroke(3.0f));
对于 Jfreechart 1.5.0:
XYItemRenderer renderer = lineChart.getXYPlot().getRenderer();
renderer.setDefaultStroke(new BasicStroke(2.0f));
((AbstractRenderer) renderer).setAutoPopulateSeriesStroke(false);