Java crée un graphique circulaire dans Excel

Les graphiques circulaires sont un outil graphique populaire dans Excel. Les graphiques circulaires vous permettent de visualiser les proportions globales de chaque composant directement dans un graphique, ce qui vous aide à analyser et à comprendre les données abstraites plus rapidement et de manière intuitive. Le graphique en anneau est une variante du graphique circulaire. Visuellement, le graphique en anneau supprime la partie centrale, mais sa fonction principale est d'interpréter la relation de rapport entre les données. Cet article vous montrera comment utiliser Free Spire.XLS pour Java pour créer des graphiques en cercle et en anneau dans votre document Excel via du code.

** Configuration de l'environnement: ** ** 1. ** Free Spire.XLS pour Java Téléchargez le package, décompressez-le et dans le dossier lib Importez le package Spire.Xls.jar dans votre application Java en tant que dépendance.

** 2. ** Vous pouvez également installer le package JAR directement à partir du référentiel Maven Le code qui compose le fichier pom.xml est:

<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <name>e-iceblue</name>
            <url>http://repo.e-iceblue.com/nexus/content/groups/public/</url>
        </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.xls.free</artifactId>
        <version>2.2.0</version>
    </dependency>
</dependencies>

diagramme circulaire:

import com.spire.xls.*;
import com.spire.xls.charts.ChartSerie;

import java.awt.*;

public class CreatePieChart {

    public static void main(String[] args) {

        //Créer un objet Workbook
        Workbook workbook = new Workbook();

        //Obtenez la première feuille de calcul
        Worksheet sheet = workbook.getWorksheets().get(0);

        //Écrire des données sur la feuille de calcul
        sheet.getCellRange("A1").setValue("Année");
        sheet.getCellRange("A2").setValue("2002");
        sheet.getCellRange("A3").setValue("2003");
        sheet.getCellRange("A4").setValue("2004");
        sheet.getCellRange("A5").setValue("2005");

        sheet.getCellRange("B1").setValue("montant des ventes");
        sheet.getCellRange("B2").setNumberValue(4000);
        sheet.getCellRange("B3").setNumberValue(6000);
        sheet.getCellRange("B4").setNumberValue(7000);
        sheet.getCellRange("B5").setNumberValue(8500);

        //Définir le style de cellule
        sheet.getCellRange("A1:B1").setRowHeight(15);
        sheet.getCellRange("A1:B1").getCellStyle().setColor(Color.darkGray);
        sheet.getCellRange("A1:B1").getCellStyle().getExcelFont().setColor(Color.white);
        sheet.getCellRange("A1:B1").getCellStyle().setVerticalAlignment(VerticalAlignType.Center);
        sheet.getCellRange("A1:B1").getCellStyle().setHorizontalAlignment(HorizontalAlignType.Center);
        sheet.getCellRange("B2:C5").getCellStyle().setNumberFormat("\"$\"#,##0");

        //Graphique circulaire ajouté
        Chart chart = sheet.getCharts().add(ExcelChartType.Pie);

        //Définir la zone de données du graphique
        chart.setDataRange(sheet.getCellRange("B2:B5"));
        chart.setSeriesDataFromRange(false);

        //Définir la position du graphique
        chart.setLeftColumn(3);
        chart.setTopRow(1);
        chart.setRightColumn(11);
        chart.setBottomRow(20);

        //Définir le titre du graphique
        chart.setChartTitle("Chiffre d'affaires annuel");
        chart.getChartTitleArea().isBold(true);
        chart.getChartTitleArea().setSize(12);

        //Paramètres d'étiquette de série
        ChartSerie cs = chart.getSeries().get(0);
        cs.setCategoryLabels(sheet.getCellRange("A2:A5"));
        cs.setValues(sheet.getCellRange("B2:B5"));
        cs.getDataPoints().getDefaultDataPoint().getDataLabels().hasValue(true);
        chart.getPlotArea().getFill().setVisible(false);

        //Sauvegarder le document
        workbook.saveToFile("piechart.xlsx", ExcelVersion.Version2016);
    }
}

piechart.jpg

** Graphique en anneau: **

import com.spire.xls.*;
import com.spire.xls.charts.ChartSerie;
import com.spire.xls.charts.ChartSeries;

import java.awt.*;

public class CreateDoughnutChart {

    public static void main(String[] args) {

        //Créer un objet Workbook
        Workbook workbook = new Workbook();

        //Obtenez la première feuille de calcul
        Worksheet sheet = workbook.getWorksheets().get(0);

        //Écrire des données sur la feuille de calcul
        sheet.getCellRange("A1").setValue("Pays");
        sheet.getCellRange("A2").setValue("Cuba");
        sheet.getCellRange("A3").setValue("Mexique");
        sheet.getCellRange("A4").setValue("Allemagne");
        sheet.getCellRange("A5").setValue("Thaïlande");

        sheet.getCellRange("B1").setValue("montant des ventes");
        sheet.getCellRange("B2").setNumberValue(6000);
        sheet.getCellRange("B3").setNumberValue(8000);
        sheet.getCellRange("B4").setNumberValue(9000);
        sheet.getCellRange("B5").setNumberValue(8500);

        //Définir le style de cellule
        sheet.getCellRange("A1:B1").setRowHeight(15);
        sheet.getCellRange("A1:B1").getCellStyle().setColor(Color.darkGray);
        sheet.getCellRange("A1:B1").getCellStyle().getExcelFont().setColor(Color.white);
        sheet.getCellRange("A1:B1").getCellStyle().setVerticalAlignment(VerticalAlignType.Center);
        sheet.getCellRange("A1:B1").getCellStyle().setHorizontalAlignment(HorizontalAlignType.Center);
        sheet.getCellRange("B2:C5").getCellStyle().setNumberFormat("\"$\"#,##0");

        //Graphique circulaire ajouté
        Chart chart = sheet.getCharts().add(ExcelChartType.Doughnut);

        //Définir la zone de données du graphique
        chart.setDataRange(sheet.getCellRange("A1:B5"));
        chart.setSeriesDataFromRange(false);

        //Définir la position du graphique
        chart.setLeftColumn(3);
        chart.setTopRow(1);
        chart.setRightColumn(11);
        chart.setBottomRow(20);

        //Définir le titre du graphique
        chart.setChartTitle("part de marché");
        chart.getChartTitleArea().isBold(true);
        chart.getChartTitleArea().setSize(12);

        //Définir la couleur de la série
        ChartSeries series = chart.getSeries();
        for (int i = 0 ; i < series.size() ; i++) {
            ChartSerie cs = series.get(i);
            cs.getDataPoints().getDefaultDataPoint().getDataLabels().hasPercentage(true);
        }

        //Définir la position de la légende
        chart.getLegend().setPosition(LegendPositionType.Top);

        //Sauvegarder le document
        workbook.saveToFile("doughnutchart.xlsx", ExcelVersion.Version2016);
    }
}

doughnutchart.jpg

Recommended Posts

Java crée un graphique circulaire dans Excel
Java crée un tableau dans un document Word
Importer des données Excel avec Java 2
Rechercher un sous-ensemble en Java
Importer des données Excel avec Java
Java crée des documents Excel
Importer des données Excel avec Java 3
Java crée des documents Word
Activez la cellule A1 de chaque feuille de fichier Excel avec Java
3 Implémentez un interpréteur simple en Java
Un exemple simple de rappels en Java
Restez coincé dans un Java Primer
A propos du renvoi d'une référence dans un Java Getter
Qu'est-ce qu'une classe en langage Java (3 /?)
Lors de la recherche de plusieurs dans un tableau Java
[Création] Un mémorandum sur le codage en Java
Qu'est-ce qu'une classe en langage Java (1 /?)
Qu'est-ce qu'une classe en langage Java (2 /?)
Créer une application TODO dans Java 7 Créer un en-tête
Créons une application de calcul avec Java
Supprimer les lignes / colonnes vides dans Java Excel
Implémenter quelque chose comme une pile en Java
Diviser une chaîne avec ". (Dot)" en Java
Création d'une classe de matrice dans Java Partie 1
J'ai créé un programme de jugement des nombres premiers en Java
GetInstance () à partir d'une classe @Singleton dans Groovy à partir de Java
Deux façons de démarrer un thread en Java + @
Lire une chaîne dans un fichier PDF avec Java
Créer un CSR avec des informations étendues en Java
Une histoire sur le JDK à l'ère de Java 11
Partition en Java
Comment afficher une page Web en Java
[Android / Java] Exploitez une base de données locale dans la salle
Code pour échapper aux chaînes JSON en Java
Janken à Java
Une note quand vous voulez Tuple en Java
Je voulais que (a == 1 && a == 2 && a == 3) vrai en Java
J'ai écrit un programme de jugement des nombres premiers en Java
Créons un framework Web ultra-simple avec Java
J'ai créé un jeu Janken en Java (CLI)
Un fichier bat qui utilise Java dans Windows
Ajouter, lire et supprimer des commentaires Excel à l'aide de Java
Conseils Java - Créez un projet Spring Boot avec Gradle
Un examen rapide de Java appris en classe
J'ai écrit un programme de factorisation prime en Java
Taux circonférentiel à Java
FizzBuzz en Java
J'ai fait un jeu de problèmes de calcul simple en Java
Comment créer un environnement Java en seulement 3 secondes
Créez "Je ne suis pas un robot" en Java EE (Jakarta EE)
Un examen rapide de Java appris en classe part4
Ecrire une classe en Kotlin et l'appeler en Java
J'ai essayé de créer une compétence Clova en Java
[Mémo personnel] Créez une copie complète simple avec Java
Comment créer un URI de données (base64) en Java
Remarque sur l'initialisation des champs dans le didacticiel Java
J'ai essayé de créer une fonction de connexion avec Java
Implémentez rapidement singleton avec enum en Java
Ce que j'ai appris lors de la création d'un serveur en Java