créer des graphiques dans powerpoint ppt java

Les graphiques sont utilisés pour résumer et représenter visuellement les données dans les présentations. Pour visualiser les données, MS PowerPoint fournit un large éventail de types de graphiques. Parmi tous, les types de graphiques les plus couramment utilisés incluent les graphiques à secteurs, les graphiques linéaires, les graphiques à barres, les histogrammes, les graphiques boursiers, etc. Dans cet article, vous apprendrez à créer des graphiques dans des présentations PowerPoint à l’aide de Java.

API Java pour créer des graphiques dans PowerPoint

Afin de créer différents types de graphiques dans les présentations, nous utiliserons Aspose.Slides for Java. Ladite API vous permet de créer et de manipuler des présentations PowerPoint à partir de vos applications Java. De plus, il vous permet de créer et d’ajouter des graphiques aux présentations de manière transparente. Vous pouvez soit télécharger l’API ou l’installer à l’aide des configurations Maven suivantes.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>21.7</version>
    <classifier>jdk16</classifier>
</dependency>

Créer un histogramme dans PowerPoint PPT à l’aide de Java

Voici les étapes pour créer un histogramme dans une présentation PowerPoint à l’aide de Java.

  • Tout d’abord, créez une instance de la classe Presentation (spécifiez le chemin du fichier dans le constructeur en cas de chargement d’une présentation existante).
  • Obtenez la référence de la diapositive en spécifiant son index.
  • Ajoutez un graphique avec des données par défaut avec le type ChartType.ClusteredColumn.
  • Effacez les séries et catégories par défaut.
  • Accédez au classeur de données de graphique dans un objet IChartDataWorkbook.
  • Ajoutez de nouvelles séries et catégories du graphique au classeur.
  • Ajoutez de nouvelles données de graphique à la série de graphiques.
  • Enfin, enregistrez la présentation à l’aide de la méthode Presentation.save(String, SaveFormat).

À des fins de démonstration, l’exemple de code suivant montre comment créer un histogramme dans une présentation PowerPoint à l’aide de Java.

// Créer une nouvelle présentation
Presentation pres = new Presentation();
try {
    
    // Ajouter un nouveau graphique à colonnes et effacer les catégories et séries par défaut
    IChart ch = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.ClusteredColumn, 100, 100, 600, 450);
    ch.getChartData().getSeries().clear();
    ch.getChartData().getCategories().clear();
    
    // Accéder aux données du graphique
    IChartDataWorkbook fact = ch.getChartData().getChartDataWorkbook();
    fact.clear(0);
    int defaultWorksheetIndex = 0;

    // Ajouter des catégories
    IChartCategory category = ch.getChartData().getCategories().add(fact.getCell(0, "c2", "A"));
    category.getGroupingLevels().setGroupingItem(1, "Group1");
    category = ch.getChartData().getCategories().add(fact.getCell(0, "c3", "B"));

    category = ch.getChartData().getCategories().add(fact.getCell(0, "c4", "C"));
    category.getGroupingLevels().setGroupingItem(1, "Group2");
    category = ch.getChartData().getCategories().add(fact.getCell(0, "c5", "D"));

    category = ch.getChartData().getCategories().add(fact.getCell(0, "c6", "E"));
    category.getGroupingLevels().setGroupingItem(1, "Group3");
    category = ch.getChartData().getCategories().add(fact.getCell(0, "c7", "F"));

    category = ch.getChartData().getCategories().add(fact.getCell(0, "c8", "G"));
    category.getGroupingLevels().setGroupingItem(1, "Group4");
    category = ch.getChartData().getCategories().add(fact.getCell(0, "c9", "H"));

    // Ajouter une série
    IChartSeries series = ch.getChartData().getSeries().add(fact.getCell(0, "D1", "Series 1"),
            ChartType.ClusteredColumn);

    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D2", 10));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D3", 20));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D4", 30));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D5", 40));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D6", 50));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D7", 60));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D8", 70));
    series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D9", 80));
    
    // Enregistrer la présentation avec le graphique
    pres.save("column-chart.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Voici la capture d’écran de l’histogramme résultant.

Créer un graphique à colonnes dans PowerPoint Java

Créer un graphique en nuage de points dans PowerPoint PPT à l’aide de Java

Voici les étapes pour créer un graphique dispersé dans la présentation PowerPoint à l’aide de Java.

  • Créez une nouvelle présentation ou chargez-en une existante à l’aide de la classe Presentation.
  • Récupère la référence de la diapositive dans l’objet ISlide.
  • Ajoutez un type de graphique ScatterWithSmoothLines avec des données par défaut et obtenez sa référence dans l’objet IChart.
  • Accédez au classeur de données de graphique dans l’objet IChartDataWorkbook et effacez la série par défaut.
  • Ajoutez une nouvelle série aux données du graphique.
  • Accédez à chaque série dans l’objet IChartSeries et ajoutez des points de données à la série.
  • Accédez au marqueur de la série à l’aide de IChartSeries.getMarker() et définissez ses propriétés.
  • Enregistrez la présentation à l’aide de la méthode Presentation.save(String, SaveFormat).

L’exemple de code suivant montre comment créer un graphique dispersé dans des présentations PowerPoint à l’aide de Java.

// Instancier la classe de présentation qui représente le fichier PPTX
Presentation pres = new Presentation();
try {
    // Accéder à la première diapositive
    ISlide slide = pres.getSlides().get_Item(0);

    // Créer le graphique par défaut
    IChart chart = slide.getShapes().addChart(ChartType.ScatterWithSmoothLines, 0, 0, 400, 400);
    
    // Obtenir l'index de feuille de calcul de données de graphique par défaut
    int defaultWorksheetIndex = 0;
    
    // Obtenir la feuille de calcul des données du graphique
    IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
    
    // Supprimer la série de démonstration
    chart.getChartData().getSeries().clear();
    
    // Ajouter une nouvelle série
    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());
    
    // Prendre la première série de graphiques
    IChartSeries series = chart.getChartData().getSeries().get_Item(0);
    
    // Ajoutez un nouveau point (1:3) ici.
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 1), fact.getCell(defaultWorksheetIndex, 2, 2, 3));
    
    // Ajouter un nouveau point (2:10)
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 2), fact.getCell(defaultWorksheetIndex, 3, 2, 10));
    
    // Modifier le type de série
    series.setType(ChartType.ScatterWithStraightLinesAndMarkers);
    
    // Changer le marqueur de série de graphiques
    series.getMarker().setSize(10);
    series.getMarker().setSymbol(MarkerStyleType.Star);
    
    // Prendre la deuxième série de graphiques
    series = chart.getChartData().getSeries().get_Item(1);
    
    // Ajoutez un nouveau point (5:2) ici.
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 2, 3, 5), fact.getCell(defaultWorksheetIndex, 2, 4, 2));
    
    // Ajouter un nouveau point (3:1)
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 3, 3, 3), fact.getCell(defaultWorksheetIndex, 3, 4, 1));
    
    // Ajouter un nouveau point (2:2)
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 4, 3, 2), fact.getCell(defaultWorksheetIndex, 4, 4, 2));
    
    // Ajouter un nouveau point (5:1)
    series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 5, 3, 5), fact.getCell(defaultWorksheetIndex, 5, 4, 1));
    
    // Changer le marqueur de série de graphiques
    series.getMarker().setSize(10);
    series.getMarker().setSymbol(MarkerStyleType.Circle);
    
    // Enregistrer la présentation
    pres.save("scatter-chart.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

La capture d’écran suivante montre le graphique dispersé résultant.

créer un graphique dispersé dans powerpoint en C#

Créer un graphique à secteurs dans PowerPoint PPT en utilisant Java

Voici les étapes pour créer un graphique à secteurs dans une présentation PowerPoint à l’aide de Java.

  • Créez une nouvelle présentation ou chargez-en une existante à l’aide de la classe Presentation.
  • Obtenez la référence de la diapositive en fournissant son index.
  • Ajoutez un graphique avec des données par défaut avec le type ChartType.Pie.
  • Accédez aux données du graphique dans un objet IChartDataWorkbook.
  • Effacez les séries et catégories par défaut.
  • Créez de nouvelles séries et catégories.
  • Ajoutez de nouvelles données de graphique pour la série de graphiques.
  • Ajoutez de nouveaux points pour les graphiques et ajoutez des couleurs personnalisées pour les secteurs du graphique à secteurs.
  • Définissez des étiquettes pour les séries et des lignes de repère pour les étiquettes.
  • Définissez l’angle de rotation des diapositives de graphique à secteurs.
  • Enregistrez la présentation à l’aide de la méthode Presentation.save(String, SaveFormat).

L’exemple de code suivant montre comment créer un graphique à secteurs dans une présentation PowerPoint à l’aide de Java.

// Instancier la classe de présentation qui représente le fichier PPTX
Presentation pres = new Presentation();
try {
    // Accéder à la première diapositive
    ISlide slides = pres.getSlides().get_Item(0);
    
    // Ajouter un graphique avec des données par défaut
    IChart chart = slides.getShapes().addChart(ChartType.Pie, 100, 100, 400, 400);
    
    // Définir le titre du graphique
    chart.getChartTitle().addTextFrameForOverriding("Sample Title");
    chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(NullableBool.True);
    chart.getChartTitle().setHeight(20);
    chart.setTitle(true);
    
    // Définir la première série sur Afficher les valeurs
    chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);
    
    // Définir l'index de la feuille de données du graphique
    int defaultWorksheetIndex = 0;
    
    // Obtenir la feuille de calcul des données du graphique
    IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
    
    // Supprimer les séries et catégories générées par défaut
    chart.getChartData().getSeries().clear();
    chart.getChartData().getCategories().clear();
    
    // Ajouter de nouvelles catégories
    chart.getChartData().getCategories().add(fact.getCell(0, 1, 0, "First Qtr"));
    chart.getChartData().getCategories().add(fact.getCell(0, 2, 0, "2nd Qtr"));
    chart.getChartData().getCategories().add(fact.getCell(0, 3, 0, "3rd Qtr"));
    
    // Ajouter une nouvelle série
    IChartSeries series = chart.getChartData().getSeries().add(fact.getCell(0, 0, 1, "Series 1"), chart.getType());
    
    // Remplir maintenant les données de la série
    series.getDataPoints().addDataPointForPieSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 20));
    series.getDataPoints().addDataPointForPieSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 50));
    series.getDataPoints().addDataPointForPieSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 30));
    
    // Ne fonctionne pas dans la nouvelle version
    // Ajouter de nouveaux points et définir la couleur du secteur
    // series.IsColorVaried = true;
    chart.getChartData().getSeriesGroups().get_Item(0).setColorVaried(true);
    
    IChartDataPoint point = series.getDataPoints().get_Item(0);
    point.getFormat().getFill().setFillType(FillType.Solid);
    point.getFormat().getFill().getSolidFillColor().setColor(Color.CYAN);
	
    // Définir la bordure du secteur
    point.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
    point.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.GRAY);
    point.getFormat().getLine().setWidth(3.0);
    //point.getFormat().getLine().setStyle(LineStyle.ThinThick);
    //point.getFormat().getLine().setDashStyle(LineDashStyle.DashDot);
    
    IChartDataPoint point1 = series.getDataPoints().get_Item(1);
    point1.getFormat().getFill().setFillType(FillType.Solid);
    point1.getFormat().getFill().getSolidFillColor().setColor(Color.ORANGE);
    
    // Définir la bordure du secteur
    point1.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
    point1.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
    point1.getFormat().getLine().setWidth(3.0);
    //point1.getFormat().getLine().setStyle(LineStyle.Single);
    //point1.getFormat().getLine().setDashStyle(LineDashStyle.LargeDashDot);
    
    IChartDataPoint point2 = series.getDataPoints().get_Item(2);
    point2.getFormat().getFill().setFillType(FillType.Solid);
    point2.getFormat().getFill().getSolidFillColor().setColor(Color.YELLOW);
    
    // Définir la bordure du secteur
    point2.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
    point2.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.RED);
    point2.getFormat().getLine().setWidth(2.0);
    //point2.getFormat().getLine().setStyle(LineStyle.ThinThin);
    //point2.getFormat().getLine().setDashStyle(LineDashStyle.LargeDashDotDot);
    
    // Créez des étiquettes personnalisées pour chacune des catégories pour les nouvelles séries
    IDataLabel lbl1 = series.getDataPoints().get_Item(0).getLabel();
    
    // lbl.ShowCategoryName = true ;
    lbl1.getDataLabelFormat().setShowValue(true);
    
    IDataLabel lbl2 = series.getDataPoints().get_Item(1).getLabel();
    lbl2.getDataLabelFormat().setShowValue(true);
    lbl2.getDataLabelFormat().setShowLegendKey(true);
    lbl2.getDataLabelFormat().setShowPercentage(true);
    
    IDataLabel lbl3 = series.getDataPoints().get_Item(2).getLabel();
    lbl3.getDataLabelFormat().setShowSeriesName(true);
    lbl3.getDataLabelFormat().setShowPercentage(true);
    
    // Afficher les lignes de repère pour le graphique
    series.getLabels().getDefaultDataLabelFormat().setShowLeaderLines(true);
    
    // Définir l'angle de rotation pour les secteurs du graphique à secteurs
    chart.getChartData().getSeriesGroups().get_Item(0).setFirstSliceAngle(180);
    
    // Enregistrer la présentation avec le graphique
    pres.save("pie-chart.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Voici la capture d’écran du graphique à secteurs généré.

Créer un graphique à secteurs dans PowerPoint Java

Ajouter un graphique d’histogramme dans PowerPoint PPTX à l’aide de Java

Voici les étapes pour créer un histogramme dans les présentations PowerPoint à l’aide de Java.

  • Créez une nouvelle présentation ou chargez-en une existante à l’aide de la classe Presentation.
  • Obtenir la référence de la diapositive en fournissant son index.
  • Ajoutez un graphique avec des données par défaut avec le type ChartType.Histogram.
  • Accédez aux données du graphique dans l’objet IChartDataWorkbook.
  • Effacez les séries et catégories par défaut.
  • Ajouter de nouvelles séries et catégories.
  • Enregistrez la présentation à l’aide de la méthode Presentation.save(String, SaveFormat).

L’exemple de code suivant montre comment créer un histogramme à l’aide de Java.

// Créer une nouvelle présentation
Presentation pres = new Presentation();
try {
    
    // Ajouter un nouveau graphique d'histogramme et effacer ses catégories et séries
    IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Histogram, 50, 50, 500, 400);
    chart.getChartData().getCategories().clear();
    chart.getChartData().getSeries().clear();

    // Accéder aux données du graphique
    IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
    wb.clear(0);

    // Ajouter une série
    IChartSeries series = chart.getChartData().getSeries().add(ChartType.Histogram);
    series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A1", 15));
    series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A2", -41));
    series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A3", 16));
    series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A4", 10));
    series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A5", -23));
    series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A6", 16));

    chart.getAxes().getHorizontalAxis().setAggregationType(AxisAggregationType.Automatic);

    // Enregistrer la présentation
    pres.save("histogram-chart.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Voici la capture d’écran du graphique d’histogramme créé.

créer un graphique d'histogramme dans powerpoint en C#

Créer un graphique boursier dans PowerPoint à l’aide de Java

Le graphique boursier est également l’un des types de graphiques couramment utilisés dans les présentations PowerPoint. Voici les étapes pour créer un graphique boursier en Java.

  • Créez une instance de la classe Presentation.
  • Obtenez la référence de la diapositive en fournissant son index.
  • Ajoutez un graphique avec des données par défaut avec le type ChartType.OpenHighLowClose.
  • Accédez aux données du graphique dans l’objet IChartDataWorkbook.
  • Effacez les séries et catégories par défaut.
  • Ajouter de nouvelles séries et catégories.
  • Ajoutez de nouvelles données de graphique pour la série de graphiques.
  • Spécifiez le format HiLowLines.
  • Enregistrez la présentation à l’aide de la méthode Presentation.save(String, SaveFormat).

L’exemple de code suivant montre comment ajouter un graphique boursier à une présentation PowerPoint à l’aide de C#.

// Créer une nouvelle présentation
Presentation pres = new Presentation();
try {
    
    // Ajouter un graphique
    IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.OpenHighLowClose, 50, 50, 600, 400, false);

    // Effacer les catégories et les séries
    chart.getChartData().getSeries().clear();
    chart.getChartData().getCategories().clear();

    // Accéder aux données du graphique
    IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();

    // Ajouter des catégories
    chart.getChartData().getCategories().add(wb.getCell(0, 1, 0, "A"));
    chart.getChartData().getCategories().add(wb.getCell(0, 2, 0, "B"));
    chart.getChartData().getCategories().add(wb.getCell(0, 3, 0, "C"));

    chart.getChartData().getSeries().add(wb.getCell(0, 0, 1, "Open"), chart.getType());
    chart.getChartData().getSeries().add(wb.getCell(0, 0, 2, "High"), chart.getType());
    chart.getChartData().getSeries().add(wb.getCell(0, 0, 3, "Low"), chart.getType());
    chart.getChartData().getSeries().add(wb.getCell(0, 0, 4, "Close"), chart.getType());

    // Ajouter des données de série
    IChartSeries series = chart.getChartData().getSeries().get_Item(0);

    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 1, 72));
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 1, 25));
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 1, 38));

    series = chart.getChartData().getSeries().get_Item(1);
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 2, 172));
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 2, 57));
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 2, 57));

    series = chart.getChartData().getSeries().get_Item(2);
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 3, 12));
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 3, 12));
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 3, 13));

    series = chart.getChartData().getSeries().get_Item(3);
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 4, 25));
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 4, 38));
    series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 4, 50));

    chart.getChartData().getSeriesGroups().get_Item(0).getUpDownBars().setUpDownBars(true);
    chart.getChartData().getSeriesGroups().get_Item(0).getHiLowLinesFormat().getLine().getFillFormat().setFillType(FillType.Solid);

    for (IChartSeries ser : chart.getChartData().getSeries())
    {
        ser.getFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
    }

    // Enregistrer la présentation
    pres.save("output.pptx", SaveFormat.Pptx);
} finally {
    if (pres != null) pres.dispose();
}

Voici la capture d’écran du graphique boursier créé.

créer un graphique boursier dans powerpoint en C#

Plus de types de graphiques

Outre les graphiques mentionnés ci-dessus, il existe également d’autres types de graphiques que vous pouvez ajouter aux présentations PowerPoint. Pour en savoir plus sur les types de graphiques pris en charge, vous pouvez consulter cet article de documentation.

Obtenez une licence API gratuite

Vous pouvez obtenir une licence temporaire gratuite afin d’utiliser l’API sans limitations d’évaluation.

Essayez en ligne

Vous pouvez également essayer l’outil en ligne gratuit pour créer des graphiques dans les présentations PowerPoint, basé sur Aspose.Slides.

Conclusion

Dans cet article, vous avez appris à créer des graphiques dans des présentations PowerPoint à l’aide de Java. Le guide étape par étape et les exemples de code ont montré comment ajouter des histogrammes, des nuages de points, des camemberts, des histogrammes et des graphiques boursiers. Vous pouvez en savoir plus sur Aspose.Slides for Java en utilisant documentation. Si vous avez des questions, informez-nous via notre forum.

Voir également