L’intégration de données visuelles directement dans les fichiers Word peut transformer des rapports statiques en présentations percutantes. Conholdate.Total for Java fournit un SDK robuste qui simplifie la création et l’insertion de graphiques dans les documents DOCX. Dans ce guide, nous vous accompagnerons à travers un exemple complet et compilable qui montre comment créer des graphiques dans des documents Word en utilisant Java, configurer le graphique et enregistrer le résultat. À la fin, vous serez capable d’automatiser la génération de documents avec des graphiques dynamiques pour tout scénario de reporting d’entreprise.
Exemple complet fonctionnel d’intégration de graphiques dans des documents Word avec Java
Cet exemple montre comment créer un graphique en colonnes avec cinq séries de données et l’insérer dans un document Word.
import com.aspose.words.Document;
import com.aspose.words.DocumentBuilder;
import com.aspose.words.Shape;
import com.aspose.words.ChartType;
import com.aspose.words.Chart;
import com.aspose.words.ChartSeriesCollection;
public class CreateChartInWord {
public static void main(String[] args) {
// Create a document
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Add chart with default data. You can specify different chart types and sizes.
Shape shape = builder.insertChart(ChartType.COLUMN, 432, 252);
// Chart property of Shape contains all chart related options.
Chart chart = shape.getChart();
// Get chart series collection.
ChartSeriesCollection seriesColl = chart.getSeries();
// Check series count.
System.out.println(seriesColl.getCount());
// Delete default generated series.
seriesColl.clear();
// Create category names array, in this example we have two categories.
String[] categories = new String[] { "AW Category 1", "AW Category 2" };
// Adding new series. Please note, data arrays must not be empty and arrays must be the same size.
seriesColl.add("AW Series 1", categories, new double[] { 1, 2 });
seriesColl.add("AW Series 2", categories, new double[] { 3, 4 });
seriesColl.add("AW Series 3", categories, new double[] { 5, 6 });
seriesColl.add("AW Series 4", categories, new double[] { 7, 8 });
seriesColl.add("AW Series 5", categories, new double[] { 9, 10 });
// Save the document
doc.save("ColumnsChart.docx");
}
}
Remarque : Cet exemple de code démontre la fonctionnalité principale. Avant de l’utiliser dans votre projet, assurez‑vous que le chemin de sortie (
ColumnsChart.docx) pointe vers un répertoire accessible en écriture, vérifiez que toutes les dépendances requises sont correctement installées et testez soigneusement dans votre environnement de développement. Si vous rencontrez des problèmes, veuillez consulter la documentation officielle ou contacter l’équipe de support pour obtenir de l’aide.
Comment créer des graphiques dans les documents Word en Java fonctionne
Le flux de travail peut être décomposé en cinq étapes claires :
Créer un Document et DocumentBuilder - La classe
Documentreprésente le fichier Word en mémoire, etDocumentBuildervous fournit une API fluide pour insérer du contenu, y compris des graphiques.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc);Insérer une forme de graphique -
insertChartprend unChartType(par exemple,COLUMN) ainsi qu’une largeur et une hauteur en points, et renvoie unShapequi héberge le graphique sur la page.Shape shape = builder.insertChart(ChartType.COLUMN, 432, 252);Accéder à l’objet Chart - La propriété
ChartdeShapeexpose toutes les options liées aux graphiques, y compris sa collection de séries.
Chart chart = shape.getChart();
ChartSeriesCollection seriesColl = chart.getSeries();
System.out.println(seriesColl.getCount());
Voir la référence API pour plus de détails sur Chart, ChartSeriesCollection et les énumérations associées.
- Effacer les séries par défaut et ajouter les vôtres - Un graphique nouvellement inséré contient déjà des séries factices, donc
clear()les supprime avant que vous n’ajoutiez des catégories et des données avecadd(). Les tableaux de catégories et de valeurs transmis au même appeladd()doivent avoir la même longueur.seriesColl.clear();
String[] categories = new String[] { “AW Category 1”, “AW Category 2” };
seriesColl.add(“AW Series 1”, categories, new double[] { 1, 2 }); seriesColl.add(“AW Series 2”, categories, new double[] { 3, 4 });
<!--[CODE_SNIPPET_END]-->
5. **Enregistrer le document** - Enfin, `doc.save()` écrit le DOCX sur le disque.
<!--[CODE_SNIPPET_START]-->
```java
doc.save("ColumnsChart.docx");
Comprendre chacune de ces étapes facilite l’adaptation de l’exemple à différents types de graphiques, sources de données ou modèles de documents.
Préparer l’environnement
Ajoutez le référentiel Maven Conholdate et la dépendance SDK à votre pom.xml :
<repositories>
<repository>
<id>conholdate-repo</id>
<name>Conholdate Maven Repository</name>
<url>https://repository.conholdate.com/repo/</url>
</repository>
</repositories>
<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>24.9</version>
<type>pom</type>
</dependency>
Téléchargez le dernier package SDK depuis la page de téléchargement. La bibliothèque nécessite Java 8 ou une version supérieure et fonctionne sur n’importe quelle JVM standard. Aucun composant serveur supplémentaire n’est requis.
Affinement de la génération de graphiques
Vous pouvez ajuster plusieurs propriétés pour correspondre à votre style visuel :
Type de graphique - Modifiez
ChartType.COLUMNenChartType.BAR,ChartType.LINE,ChartType.PIE,ChartType.SCATTER, et d’autres types pris en charge.Shape shape = builder.insertChart(ChartType.BAR, 432, 252);Taille du graphique - Le deuxième et le troisième argument de
insertChartcontrôlent la largeur et la hauteur de la forme du graphique, en points.Shape shape = builder.insertChart(ChartType.COLUMN, 500, 300);Catégories (étiquettes d’axe) - Créez un
String[]de noms de catégories et réutilisez‑le pour chaque série qui partage les mêmes catégories.String[] categories = new String[] { "Jan", "Feb", "Mar" };Data Series - Appelez
seriesColl.add()avec un nom de série, le tableau des catégories et undouble[]de valeurs pour ajouter autant de séries comparatives que vous le souhaitez.seriesColl.add("2021", categories, new double[] { 200, 220, 250 });
Ces options vous permettent d’adapter le graphique à n’importe quelle exigence de reporting tout en gardant le code concis.
Insertion d’un graphique en nuage de points dans un document Word à l’aide de Java
Les graphiques en nuage de points tracent des paires de valeurs numériques X et Y plutôt que des catégories, ce qui les rend utiles pour visualiser des corrélations ou des distributions. ChartSeriesCollection expose une surcharge de add() spécifiquement pour ce cas : au lieu d’un tableau de catégories, vous passez deux tableaux double[], l’un pour les valeurs X et l’autre pour les valeurs Y.
import com.aspose.words.Document;
import com.aspose.words.DocumentBuilder;
import com.aspose.words.Shape;
import com.aspose.words.ChartType;
import com.aspose.words.Chart;
public class InsertScatterChart {
public static void main(String[] args) {
// Create a new document
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Insert Scatter chart.
Shape shape = builder.insertChart(ChartType.SCATTER, 432, 252);
Chart chart = shape.getChart();
// Use this overload to add series to any type of Scatter charts.
chart.getSeries().add("AW Series 1", new double[] { 0.7, 1.8, 2.6 }, new double[] { 2.7, 3.2, 0.8 });
// Save the document
doc.save("ScatterChart.docx");
}
}
Le flux global reflète l’exemple de diagramme à colonnes : créez un Document et un DocumentBuilder, insérez la forme du graphique avec ChartType.SCATTER, récupérez le Chart à partir de la forme, et ajoutez une ou plusieurs séries. Comme les graphiques en nuage de points tracent des paires de coordonnées X/Y, il n’existe pas de tableau de catégories séparé — chaque point est défini par des entrées correspondantes dans les tableaux de valeurs X et Y. Enregistrez avec doc.save() une fois que toutes les séries ont été ajoutées.
Conclusion
Intégrer des données visuelles directement dans les fichiers DOCX est un moyen puissant d’améliorer les rapports automatisés. Avec Conholdate.Total for Java, vous pouvez créer des graphiques dans des documents Word en utilisant Java en quelques lignes de code seulement — y compris les graphiques en colonnes, en barres, en lignes, en secteurs et en nuages de points — personnaliser les catégories et les séries, et générer des documents d’aspect professionnel côté serveur. N’oubliez pas d’obtenir une licence appropriée pour une utilisation en production ; une licence temporaire est disponible sur la page de licence temporaire, et les détails complets des tarifs peuvent être consultés sur la page de tarification. Commencez à intégrer la génération de graphiques dès aujourd’hui et offrez à vos utilisateurs des documents basés sur les données qui se démarquent.
FAQs
Comment créer des graphiques dans des documents Word en Java avec Conholdate.Total ?
AppelezinsertChartsur unDocumentBuilderavec leChartTypesouhaité, récupérez leChartà partir duShaperetourné, videz la série par défaut, et ajoutez vos propres catégories et données avecseriesColl.add(), puis enregistrez le document. Le code complet est présenté dans l’exemple ci‑dessus.Quels types de graphiques sont pris en charge ? Le SDK prend en charge les graphiques en colonne, en barre, en ligne, en secteur, en nuage de points et de nombreux autres types de graphiques standard via l’énumération
ChartType. Modifiez la valeur de l’énumération passée àinsertChartpour changer de type.En quoi un graphique en nuage de points diffère-t-il d’un graphique à colonnes ou à barres ? Un graphique en nuage de points trace des paires de valeurs numériques X et Y au lieu de catégories nommées, vous devez donc utiliser la surcharge
add(name, xValues, yValues)deChartSeriesCollectionplutôt que de fournir un tableau de catégories.Dois-je définir une licence pour la génération de graphiques ? Oui. Une licence temporaire peut être obtenue sur la page de licence temporaire. Pour les projets à long terme, achetez une licence complète via la page de tarification.
Le SDK est‑il compatible avec les builds Maven et Gradle ? Absolument. Ajoutez le référentiel Maven de Conholdate et la dépendance
conholdate-totalà votre fichier de construction comme indiqué dans la section Configuration, et la bibliothèque fonctionne avec Maven et Gradle.
