0

我刚刚使用 birt 图表 API 迈出了第一步。我创建了一些堆叠和非堆叠(分组)条形图,但我还需要它们的混合:一些条形系列应该堆叠,一些应该分组。如何做到这一点?

(将一些但不是所有系列设置为 bs1.setStacked(true); 会产生异常......包含堆叠和未堆叠系列的混合。)

但它应该工作?!:

http://wiki.eclipse.org/BIRT/FAQ/Charts2.2#Can_I_combine_stacked.2C_logarithmic_and.2For_percent_properties_on_a_single_scale.3F

4

1 回答 1

1

在Eclipse 论坛中得到了 Jason Weathersby 的回答。关键是为堆叠的 BarSeries (setStacked(true);) 和未堆叠的 BarSeries 定义 2 个 SeriesDefinition:

 ...
BarSeries bs1 = (BarSeries) BarSeriesImpl.create();
bs1.setDataSet(orthoValues1);
bs1.setStacked(true);

BarSeries bs2 = (BarSeries) BarSeriesImpl.create();
bs2.setDataSet(orthoValues2);
bs2.setStacked(true);

BarSeries bs3 = (BarSeries) BarSeriesImpl.create();
bs3.setDataSet(orthoValues3);
bs3.setStacked(false);

SeriesDefinition sdY = SeriesDefinitionImpl.create();
sdY.getSeriesPalette().shift(0);
yAxisPrimary.getSeriesDefinitions().add(sdY);

SeriesDefinition sdY2 = SeriesDefinitionImpl.create();
sdY2.getSeriesPalette().shift(0);
yAxisPrimary.getSeriesDefinitions().add(sdY2);  

sdY.getSeries().add(bs1);
sdY.getSeries().add(bs2);
sdY2.getSeries().add(bs3);
...
于 2012-09-07T07:17:06.177 回答