如何将ScatterWithSmoothLines类型图表中的类别添加到java aspose.slides api中?

时间:2015-01-21 11:14:29

标签: java charts scatter-plot aspose aspose-slides

HI我正在尝试首次使用aspose.slides for java api将图表创建到pptx文件中。我需要Y轴上的一些双值和X轴上的一些字符串值。但我能做到这一点。因为我很困惑使用这个库。我对这个图书馆进行了很多研究。

我的代码是 -

    Presentation pres = new Presentation();

    ISlide slide = pres.getSlides().get_Item(0);

    //Creating the default chart
    IChart chart = slide.getShapes().addChart(ChartType.ScatterWithSmoothLines, 0, 0, 400, 400);

    //Getting the default chart data worksheet index
    int defaultWorksheetIndex = 0;

    //Getting the chart data worksheet
    IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();

    //Delete demo series
    chart.getChartData().getSeries().clear();

    //Add new series
    chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 1, 1, "Series 1"), chart.getType());
    chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 1, 3, "Series 2"), chart.getType());

    //Adding new categories
    chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"));
    chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"));
    chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"));
    chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 4, 0, "Caetegoty 4"));
    chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 5, 0, "Caetegoty 5"));


    //Take first chart series
    IChartSeries series = chart.getChartData().getSeries().get_Item(0);

    //Add new point (1:3) there.
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 1), fact.getCell(defaultWorksheetIndex, 2, 2, 3));

    //Add new point (2:10)
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 2), fact.getCell(defaultWorksheetIndex, 3, 2, 10));

    //Edit the type of series
    series.setType (ChartType.ScatterWithStraightLinesAndMarkers);

    //Changing the chart series marker
    series.getMarker().setSize(10);
    series.getMarker().setSymbol(MarkerStyleType.Star);

    //Take second chart series
    series = chart.getChartData().getSeries().get_Item(1);

    //Add new point (5:2) there.
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 2, 3, 5), fact.getCell(defaultWorksheetIndex, 2, 4, 2));

    //Add new point (3:1)
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 3, 3, 3), fact.getCell(defaultWorksheetIndex, 3, 4, 1));

    //Add new point (2:2)
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 4, 3, 2), fact.getCell(defaultWorksheetIndex, 4, 4, 2));

    //Add new point (5:1)
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 5, 3, 5), fact.getCell(defaultWorksheetIndex, 5, 4, 1));

    //Changing the chart series marker
    series.getMarker().setSize(10);
    series.getMarker().setSymbol(MarkerStyleType.Circle);



    pres.save("/home/echasro/Desktop/TODAY/AsposeScatterChart.pptx", SaveFormat.Pptx); 

我正在创建此幻灯片,如-like = http://i.stack.imgur.com/IFfIQ.jpg

但我需要在X轴上添加类似= 12/12 / 2014,12 / 13 / 2014,14 / 12/2014等的类别。

我需要在pptx文件上使用此类型图表 - Link of required format file

请建议我完成任何想法。 感谢阅读

0 个答案:

没有答案