如何解决问题:如何将Chart XSLFChart集成到PowerPoint演示文稿中?
我使用Java生成PowerPoint演示文稿,下面是一些用于生成图表的编码。我在Powerpoint输出中看不到任何图表。 Powerpoint文件生成没有问题。只是图表丢失。可能是什么问题?
XSLFChart chart = ppt.createChart(slide);
chart.setTitleText("Test!");
chart.setTitleOverlay(false);
// Series Text
List<XDDFChartData> series = chart.getChartSeries();
XDDFLineChartData linechart = (XDDFLineChartData) series.get(0);
// Category
List<String> listCategories = new ArrayList<>(3);
listCategories.add("Test1");
listCategories.add("Test2");
listCategories.add("Test3");
// Values
List<Double> listValues = new ArrayList<>(3);
listValues.add(10.00);
listValues.add(20.00);
listValues.add(30.00);
String[] categories = listCategories.toArray(new String[listCategories.size()]);
Double[] values = listValues.toArray(new Double[listValues.size()]);
final int numOfPoints = categories.length;
final String categoryDatarange = chart.formatRange(new CellRangeAddress(1,numOfPoints,0));
final String valuesDatarange = chart.formatRange(new CellRangeAddress(1,1,1));
final XDDFDataSource<?> categoriesData = XDDFDataSourcesFactory.fromArray(categories,categoryDatarange);
final XDDFNumericalDataSource<? extends Number> valuesData = XDDFDataSourcesFactory.fromArray(values,valuesDatarange);
XDDFLineChartData.Series firstSeries = (XDDFLineChartData.Series) linechart.getSeries().get(0);
firstSeries.replaceData(categoriesData,valuesData);
// firstSeries.setTitle("chartTitle",// chart.setSheetTitle("chartTitle",0));
firstSeries.setMarkerSize((short) 70);
firstSeries.setMarkerStyle(MarkerStyle.DASH);
firstSeries.setShowleaderLines(true);
firstSeries.setSmooth(true);
// firstSeries.setShapeProperties(XDDFShapeProperties);
chart.plot(linechart);
Rectangle rect = new Rectangle(0,2000,2000);
slide.addChart(chart,rect);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。