チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

チュートリアル»Java»Spire.XLS for Java»グラフ»Java:Excel で円グラフまたはドーナツグラフを作成する方法
2024-03-14

Java:Excel で円グラフまたはドーナツグラフを作成する方法

円グラフは、セクターに分割された円形のグラフであり、各セクターは全体の比例部分を表します。 データはグラフの形式で表示されるため、ユーザーはデータを簡単に分析および比較できます。 ドーナツ グラフに関しては、中央に「穴」があることを除いて、円グラフと同じ機能を実行します。この記事では、Spire.XLS for Java を使用して、Excel で円グラフまたはドーナツグラフを作成する方法を示します。

Spire.XLS for Java をインストールします

まず、Spire.XLS for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。

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

Excel で円グラフを作成する

Spire.XLS for Java が提供する Worksheet.getCharts().add(ExcelChartType.Pie) メソッドは、ワークシートへに円グラフの追加をサポートしています。詳細な手順は次のとおりです。

  • Workbook オブジェクトを作成します。
  • Workbook.getWorksheets().get() メソッドを使用して、指定されたワークシートを取得します。
  • 指定したセルにデータを追加し、セルのスタイルを設定します。
  • Worksheet.getCharts().add(ExcelChartType.Pie) メソッドを使用して、ワークシートに円グラフを追加します。
  • Chart.setDataRange() メソッドを使用して、グラフのデータ範囲を設定します。
  • グラフの位置とタイトルを設定します。
  • グラフ内の指定されたシリーズを取得し、ChartSerie.setCategoryLabels()ChartSerie.setValues() メソッドを使用して、シリーズのカテゴリラベルと値を設定します。
  • データポイントのデータラベルを表示します。
  • Workbook.saveToFile() メソッドを使用して、結果ファイルを保存します。
  • Java
import com.spire.xls.*;
import com.spire.xls.charts.ChartSerie;

import java.awt.*;

public class CreatePieChart {

    public static void main(String[] args) {

        //Workbookオブジェクトを作成する
        Workbook workbook = new Workbook();

        //最初のワークシートを取得する
        Worksheet sheet = workbook.getWorksheets().get(0);

        //指定したセルにデータを挿入する
        sheet.getCellRange("A1").setValue("年");
        sheet.getCellRange("A2").setValue("2002");
        sheet.getCellRange("A3").setValue("2003");
        sheet.getCellRange("A4").setValue("2004");
        sheet.getCellRange("A5").setValue("2005");

        sheet.getCellRange("B1").setValue("売上");
        sheet.getCellRange("B2").setNumberValue(4000);
        sheet.getCellRange("B3").setNumberValue(6000);
        sheet.getCellRange("B4").setNumberValue(7000);
        sheet.getCellRange("B5").setNumberValue(8500);

        //セルのスタイルを設定する
        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:B5").getCellStyle().setVerticalAlignment(VerticalAlignType.Center);
        sheet.getCellRange("A1:B5").getCellStyle().setHorizontalAlignment(HorizontalAlignType.Center);

        //数値フォーマットを設定する
        sheet.getCellRange("B2:C5").getCellStyle().setNumberFormat("\"$\"#,##0");

        //円グラフをワークシートに追加する
        Chart chart = sheet.getCharts().add(ExcelChartType.Pie);

        //グラフのデータ範囲を設定する
        chart.setDataRange(sheet.getCellRange("B2:B5"));
        chart.setSeriesDataFromRange(false);

        //グラフの位置を設定する
        chart.setLeftColumn(3);
        chart.setTopRow(1);
        chart.setRightColumn(11);
        chart.setBottomRow(20);

        //グラフのタイトルを設定または書式設定する
        chart.setChartTitle("年別売上高");
        chart.getChartTitleArea().isBold(true);
        chart.getChartTitleArea().setSize(12);

        //グラフから指定された系列を取得する
        ChartSerie cs = chart.getSeries().get(0);

        //シリーズのカテゴリラベルを設定する
        cs.setCategoryLabels(sheet.getCellRange("A2:A5"));

        //シリーズの値を設定する
        cs.setValues(sheet.getCellRange("B2:B5"));

        //データポイントのデータラベルを表示する
        cs.getDataPoints().getDefaultDataPoint().getDataLabels().hasValue(true);

        //結果ファイルを保存する
        workbook.saveToFile("PieChart.xlsx", ExcelVersion.Version2016);
        workbook.dispose();
    }
}

Java:Excel で円グラフまたはドーナツグラフを作成する方法

Excel でドーナツグラフを作成する

Spire.XLS for Java が提供する Worksheet.getCharts().add(ExcelChartType.Doughnut) メソッドは、ワークシートへにドーナツグラフの追加をサポートしています。詳細な手順は次のとおりです。

  • Workbook オブジェクトを作成します。
  • Workbook.getWorksheets().get() メソッドを使用して、指定されたワークシートを取得します。
  • 指定したセルにデータを追加し、セルのスタイルを設定します。
  • Worksheet.getCharts().add(ExcelChartType.Doughnut) メソッドを使用して、ワークシートにドーナツグラフを追加します。
  • Chart.setDataRange() メソッドを使用して、グラフのデータ範囲を設定します。
  • グラフの位置とタイトルを設定します。
  • データポイントのデータラベルを表示します。
  • Chart.getLegend().setPosition() メソッドを使用して、グラフの凡例位置を設定します。
  • Workbook.saveToFile() メソッドを使用して、結果ファイルを保存します。
  • Java
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) {

        //Workbookオブジェクトを作成する
        Workbook workbook = new Workbook();

        //最初のワークシートを取得する
        Worksheet sheet = workbook.getWorksheets().get(0);

        //指定したセルにデータを挿入する
        sheet.getCellRange("A1").setValue("国");
        sheet.getCellRange("A2").setValue("キューバ");
        sheet.getCellRange("A3").setValue("メキシコ");
        sheet.getCellRange("A4").setValue("ドイツ");
        sheet.getCellRange("A5").setValue("日本");

        sheet.getCellRange("B1").setValue("売上");
        sheet.getCellRange("B2").setNumberValue(6000);
        sheet.getCellRange("B3").setNumberValue(8000);
        sheet.getCellRange("B4").setNumberValue(9000);
        sheet.getCellRange("B5").setNumberValue(8500);

        //セルのスタイルを設定する
        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:B5").getCellStyle().setVerticalAlignment(VerticalAlignType.Center);
        sheet.getCellRange("A1:B5").getCellStyle().setHorizontalAlignment(HorizontalAlignType.Center);

        //数値フォーマットを設定する
        sheet.getCellRange("B2:C5").getCellStyle().setNumberFormat("\"$\"#,##0");

        //ドーナツグラフをワークシートに追加する
        Chart chart = sheet.getCharts().add(ExcelChartType.Doughnut);

        //グラフのデータ範囲を設定する
        chart.setDataRange(sheet.getCellRange("A1:B5"));
        chart.setSeriesDataFromRange(false);

        //グラフの位置を設定する
        chart.setLeftColumn(3);
        chart.setTopRow(1);
        chart.setRightColumn(11);
        chart.setBottomRow(20);

        //グラフのタイトルを設定する
        chart.setChartTitle("国別の市場シェア");
        chart.getChartTitleArea().isBold(true);
        chart.getChartTitleArea().setSize(12);

        //データポイントのデータラベルを表示する
        ChartSeries series = chart.getSeries();
        for (int i = 0 ; i < series.size() ; i++) {
            ChartSerie cs = series.get(i);
            cs.getDataPoints().getDefaultDataPoint().getDataLabels().hasPercentage(true);
        }

        //グラフの凡例の位置を設定する
        chart.getLegend().setPosition(LegendPositionType.Top);

        //結果ファイルを保存する
        workbook.saveToFile("DoughnutChart.xlsx", ExcelVersion.Version2016);
        workbook.dispose();
    }
}

Java:Excel で円グラフまたはドーナツグラフを作成する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Read 454 times