1.复合饼图如何指定第二绘图区的数据?
2.如何指定第二绘图区百分比比例(为实际百分比或者第二绘图区的总比例为1)
这是我的测试用例
@Test
public void testChart() throws Exception {
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
String[] categories = new String[]{"aa","bb", "cc", "dd"};
double[] values = new double[]{300,1,2,3};
Shape shape = builder.insertChart(ChartType.PIE_OF_PIE, 432.0, 252.0);
Chart chart = shape.getChart();
chart.getSeries().clear();
chart.getSeries().add("测试复合饼图", categories, values);
for (int j = 0; j < categories.length; j++) {
ChartDataLabel chartDataLabel = chart.getSeries().get(0).getDataLabels().add(j);
chartDataLabel.setShowLegendKey(true);
chartDataLabel.getNumberFormat().setFormatCode("0.00%");
chartDataLabel.setShowLeaderLines(true);
chartDataLabel.setShowPercentage(true);
chartDataLabel.setShowValue(true);
chartDataLabel.setSeparator(" / ");
}
doc.save("d://cd.docx", SaveFormat.DOCX);
}
这是图表
测试复合饼图.png (20.8 KB)
我的问题是如何指定第二绘图区(子饼图)的数据,比如我想把bb.cc.dd分类都放在子饼图中
还有一个问题是,第二绘图区所占的百分比(总数据的百分比,第二绘图区内所有数据的百分比)有没有api可以设置?
@denis.shvydkiy 抱歉,关于问题一我没明白您的意思。我的问题能不能在复合饼图中指定第二绘图区(子饼图)的数据,比如我有aa,bb,cc,dd几个分类, 我想把bb.cc.dd分类都放在子饼图中,这要如何实现呢?
您好,其实我的本质问题是 饼图在数据分布极端不均匀时,会出现标签重叠的问题,然后我就想着用复合饼图去解决,但现在看来复合饼图没法解决这个问题。 那有没有办法解决标签重叠的问题呢? 比如可不可以设置标签的引导线的位置?就像附件中的那种方式
cd.docx (14.5 KB)