如何在JFreeChart中为多个系列设置线条粗细?



我创建了很多图表。在他们每个人中,我都需要打电话

renderer.setSeriesStroke( i, new BasicStroke( 2.0f ) );

对于每个系列。(rendererchart.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);

最新更新