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 pour créer des graphiques dans PowerPoint
- Créer un histogramme dans PowerPoint à l’aide de Java
- Créer un graphique en nuage de points dans PowerPoint à l’aide de Java
- Ajouter un graphique à secteurs dans PowerPoint à l’aide de Java
- Ajouter un graphique d’histogramme dans PowerPoint à l’aide de Java
- Créer un graphique boursier dans 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 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 à 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é.
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 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éé.
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.