クールな効果を作成: Java を使用して Excel ミニチャートをエレガントに作成

要約: この記事はオリジナルであり、Grape City 技術チームによって最初に公開されたものです。転載する場合は出典を明記してください:グレープシティ公式ウェブサイト. グレープシティは、開発者に力を与えるための専門的な開発ツール、ソリューション、サービスを開発者に提供します。

序文

スパークラインはデータを視覚化する簡潔かつ効果的な方法で、傾向や変化を示すためによく使用されます。通常、データの変化を表すために使用される一連の小さな線または棒で構成されます。スパークラインの主な特徴は、スペースをとらず、理解しやすいことです。

スパークラインは、限られたスペース内の複数のデータ セットにわたる傾向を示すために、データ ダッシュボード、レポート、プレゼンテーションでよく使用されます。スパークラインを通じて、ユーザーはデータの傾向を迅速に分析し、重要な情報を発見できます。今回はJavaでExcelのスパークラインを作成する方法を紹介します。

1. Java でスパークラインを作成する

Excel には 3 種類のスパークラインがあります。

  • 折れ線グラフ
  • 縦棒グラフ
  • 損益グラフ

以下のコードを使用すると、3 種類のスパークラインを簡単に作成できます。

Workbook wb = new Workbook();
 IWorksheet sheet = wb.getActiveSheet();

 // 定义数据
 Object[][] data = new Object[][]
 {
   {1, -3, 2},
   {4, -6, 5},
   {7, -9, 8},
   {10, 12, -11}
 };
 sheet.getRange("A1:C4").setValue(data);

 // 添加迷你图
 sheet.getRange("D1:D4").getSparklineGroups().add(SparkType.Line, "A1:C4");
 sheet.getRange("E1:E4").getSparklineGroups().add(SparkType.Column, "A1:C4");
 sheet.getRange("F1:F4").getSparklineGroups().add(SparkType.ColumnStacked100, "A1:C4");
 wb.save("output/sparkline.xlsx");

効果は次の図に示されています。

2. Java でスパークラインの組み合わせを作成する

Excel では、複数のスパークラインを作成すると、それらのスパークラインに組み合わせが自動的に追加され、同じ組み合わせのスパークラインには同じ設定 (線の種類など) が使用されます。スパークラインを選択すると、Excel は青いボックスと同じスパークラインの組み合わせを選択します。

Java は、既存のスパークラインの組み合わせを再作成したり、組み合わせを通じてスパークラインの構成を変更したりするための、対応する API も提供します。

(1)既存のミニピクチャーに組み合わせを追加

// 创建workbook,并获取当前sheet
 Workbook wb = new Workbook();
 IWorksheet sheet = wb.getActiveSheet();
 // 定义数据区域
 Object[][] data = new Object[][]
 {
   { 1, 2, 3 },
   { 4, 5, 6 },
   { 7, 8, 9 },
   { 10, 11, 12 }
 };
 sheet.getRange("A1:C4").setValue(data);
 sheet.getRange("D1:D4").getSparklineGroups().add(SparkType.Line, "A1:C4");
 sheet.getRange("F1:H4").setValue(data);

 // 添加一组新的迷你图
 sheet.getRange("J1:J4").getSparklineGroups().add(SparkType.Column, "F1:H4");

 // 基于区域"J2"的迷你图设置,创建一个新的组合
 sheet.getRange("A1:J4").getSparklineGroups().group(sheet.getRange("J2"));
 wb.save("output/sparkline.xlsx");

実装効果は次の図に示されており、新しく作成された組み合わせにより、D1:D4 の折れ線ミニチャートが縦棒ミニチャートになっていることがわかります。

(2) 組み合わせの構成とスパークラインのスタイルを変更する

// 创建workbook,并获取当前sheet
 Workbook wb = new Workbook();
 IWorksheet sheet = wb.getActiveSheet();
 // 定义数据区域
 Object[][] data = new Object[][]
 {
   { 1, 2, 3 },
   { 4, 5, 6 },
   { 7, 8, 9 },
   { 10, 11, 12 }
 };
 sheet.getRange("A1:C4").setValue(data);
 // 添加迷你图
 sheet.getRange("D1:D4").getSparklineGroups().add(SparkType.Line, "A1:C4");
 // 定义日期数据
 Object[] date_data = new Object[]
 {
   new GregorianCalendar(2011, 11, 16),
   new GregorianCalendar(2011, 11, 17),
   new GregorianCalendar(2011, 11, 18)
 };
 sheet.getRange("A7:C7").setValue(date_data);

 // 修改迷你图的配置
 ISparklineGroup sparklinegroup = sheet.getRange("D1").getSparklineGroups().get(0);
 sparklinegroup.setLineWeight(2.5);
 sparklinegroup.getPoints().getMarkers().getColor().setColor(Color.GetRed());
 sparklinegroup.getPoints().getMarkers().setVisible(true);
 sparklinegroup.getSeriesColor().setColor(Color.GetPurple());
 wb.save("output/sparkline.xlsx");

効果は次の図に示されています。

要約する

以上がスパークラインの使い方の紹介です。ミニグラフのゲームプレイやテクニックについて詳しく知りたい場合は、このヘルプ マニュアルを参照してください。マニュアルには、ミニグラフの使用方法がさらに含まれています。初心者でも経験豊富なプロフェッショナルでも、このヘルプ マニュアルはあなたに提供します。貴重な指導と支援が得られます。

拡張リンク:

フォーム駆動からモデル駆動へ、ローコード開発プラットフォームの開発トレンドを読み解く

ローコード開発プラットフォームとは何ですか?

ブランチベースのバージョン管理は、プロジェクトの提供からカスタマイズされた製品開発へのローコード移行を支援します

オープンソース フレームワーク NanUI の作者がスチールの販売に切り替えたため、プロジェクトは中断されました。Apple App Store の無料リストのナンバー 1 はポルノ ソフトウェア TypeScript です。人気が出てきたばかりなのに、なぜ大手はそれを放棄し始めるのでしょうか。 ? TIOBE 10月リスト:Javaが最大の下落、C#はJavaに迫る Rust 1.73.0リリース AIガールフレンドにイギリス女王暗殺を勧められた男性に懲役9年の実刑判決 Qt 6.6正式リリース ロイター:RISC-Vテクノロジーが中米テクノロジー戦争の鍵となる 新たな戦場 RISC-V: 単一の企業や国に支配されない レノボ、Android PC の発売を計画
{{名前}}
{{名前}}

おすすめ

転載: my.oschina.net/powertoolsteam/blog/10117333