# C++でプレゼンテーションチャートをフォーマットする

> Aspose.Slides for C++ におけるチャートの書式設定を学び、プロフェッショナルで目を引くスタイルで PowerPoint プレゼンテーションを向上させましょう。

Source: https://docs.aspose.com/slides/ja/cpp/chart-formatting/
Updated: 2026-01-21


## **チャート エンティティの書式設定**
Aspose.Slides for C++ を使用すると、開発者はスライドにカスタム チャートをゼロから追加できます。本記事では、チャートのカテゴリ軸および値軸を含むさまざまなチャート エンティティの書式設定方法について説明します。

Aspose.Slides for C++ は、さまざまなチャート エンティティを管理し、カスタム値で書式設定するためのシンプルな API を提供します。

1. **Presentation** クラスのインスタンスを作成します。  
1. インデックスでスライドの参照を取得します。  
1. 任意のタイプのデフォルト データ付きチャートを追加します（この例では **ChartType.LineWithMarkers** を使用）。  
1. チャートの値軸にアクセスし、次のプロパティを設定します：  
   1. 値軸メジャー グリッド線の **Line format** を設定  
   1. 値軸マイナー グリッド線の **Line format** を設定  
   1. 値軸の **Number Format** を設定  
   1. 値軸の **Min, Max, Major and Minor units** を設定  
   1. 値軸データの **Text Properties** を設定  
   1. 値軸の **Title** を設定  
   1. 値軸の **Line Format** を設定  
1. チャートのカテゴリ軸にアクセスし、次のプロパティを設定します：  
   1. カテゴリ軸メジャー グリッド線の **Line format** を設定  
   1. カテゴリ軸マイナー グリッド線の **Line format** を設定  
   1. カテゴリ軸データの **Text Properties** を設定  
   1. カテゴリ軸の **Title** を設定  
   1. カテゴリ軸の **Label Positioning** を設定  
   1. カテゴリ軸ラベルの **Rotation Angle** を設定  
1. チャートの凡例にアクセスし、**Text Properties** を設定します。  
1. チャートの凡例がチャートと重ならないように表示します。  
1. チャートの **Secondary Value Axis** にアクセスし、次のプロパティを設定します：  
   1. セカンダリ **Value Axis** を有効化  
   1. セカンダリ値軸の **Line Format** を設定  
   1. セカンダリ値軸の **Number Format** を設定  
   1. セカンダリ値軸の **Min, Max, Major and Minor units** を設定  
1. セカンダリ値軸上に最初のチャート シリーズをプロットします。  
1. チャートの背面壁の塗りつぶし色を設定します。  
1. チャートのプロット領域の塗りつぶし色を設定します。  
1. 変更したプレゼンテーションを PPTX ファイルに書き出します。

{{< gist "aspose-slides" "a690df625dc0b1fff869ab198affe7a4" "Examples-SlidesCPP-ChartEntities-ChartEntities.cpp" >}}

## **チャートのフォント プロパティの設定**
Aspose.Slides for C++ は、チャートのフォント関連プロパティを設定する機能を提供します。以下の手順に従ってチャートのフォント プロパティを設定してください。

- **Presentation** クラスのオブジェクトをインスタンス化します。  
- スライドにチャートを追加します。  
- フォントの高さを設定します。  
- 変更したプレゼンテーションを保存します。

以下にサンプル コードを示します。

{{< gist "aspose-com-gists" "81aeb05e6d3a070aa76fdea22ed53bc7" "Examples-SlidesCPP-FontPropertiesForChart-FontPropertiesForChart.cpp" >}}

## **チャート データ テーブルのフォント プロパティの設定**
Aspose.Slides for C++ は、シリーズ内のカテゴリの色を変更する機能を提供します。

1. **Presentation** クラスのオブジェクトをインスタンス化します。  
1. スライドにチャートを追加します。  
1. チャート テーブルを設定します。  
1. フォントの高さを設定します。  
1. 変更したプレゼンテーションを保存します。

以下にサンプル コードを示します。

{{< gist "aspose-slides" "a690df625dc0b1fff869ab198affe7a4" "Examples-SlidesCPP-SettingFontPropertiesForChartDataTable-SettingFontPropertiesForChartDataTable.cpp" >}}

## **チャート エリアの角丸境界線の設定**
Aspose.Slides for C++ は、チャート エリアの設定をサポートします。**IChart.HasRoundedCorners** と **Chart.HasRoundedCorners** プロパティが Aspose.Slides に追加されました。

1. **Presentation** クラスのオブジェクトをインスタンス化します。  
1. スライドにチャートを追加します。  
1. チャートの塗りつぶしタイプと塗りつぶし色を設定します。  
1. 角丸プロパティを **True** に設定します。  
1. 変更したプレゼンテーションを保存します。

以下にサンプル コードを示します。

{{< gist "aspose-slides" "a690df625dc0b1fff869ab198affe7a4" "Examples-SlidesCPP-SettingChartAreaRoundedBorders-SettingChartAreaRoundedBorders.cpp" >}}

## **数値形式の設定**
Aspose.Slides for C++ は、チャート データ形式を管理するためのシンプルな API を提供します。

1. [Presentation](https://reference.aspose.com/slides/cpp/aspose.slides/presentation/) クラスのインスタンスを作成します。  
1. インデックスでスライドの参照を取得します。  
1. 任意のタイプのデフォルト データ付きチャートを追加します（この例では **ChartType.ClusteredColumn** を使用）。  
1. 可能なプリセット値から事前定義された数値形式を設定します。  
1. 各チャート シリーズのデータセルを走査し、チャート データの数値形式を設定します。  
1. プレゼンテーションを保存します。  
1. カスタム数値形式を設定します。  
1. 各チャート シリーズ内のデータセルを走査し、異なる数値形式を設定します。  
1. プレゼンテーションを保存します。

{{< gist "aspose-slides" "a690df625dc0b1fff869ab198affe7a4" "Examples-SlidesCPP-NumberFormat-NumberFormat.cpp" >}}

| |**使用可能なプリセット数値形式とそのインデックスは以下のとおりです**|
| :- | :- |
|**0**|一般|
|**1**|0|
|**2**|0.00|
|**3**|#,##0|
|**4**|#,##0.00|
|**5**|$#,##0;$-#,##0|
|**6**|$#,##0;Red$-#,##0|
|**7**|$#,##0.00;$-#,##0.00|
|**8**|$#,##0.00;Red$-#,##0.00|
|**9**|0%|
|**10**|0.00%|
|**11**|0.00E+00|
|**12**|# ?/?|
|**13**|# /|
|**14**|m/d/yy|
|**15**|d-mmm-yy|
|**16**|d-mmm|
|**17**|mmm-yy|
|**18**|h:mm AM/PM|
|**19**|h:mm:ss AM/PM|
|**20**|h:mm|
|**21**|h:mm:ss|
|**22**|m/d/yy h:mm|
|**37**|#,##0;-#,##0|
|**38**|#,##0;Red-#,##0|
|**39**|#,##0.00;-#,##0.00|
|**40**|#,##0.00;Red-#,##0.00|
|**41**|_ * #,##0_ ;_ * "_ ;_ @_|
|**42**|_ $* #,##0_ ;_ $* "_ ;_ @_|
|**43**|_ * #,##0.00_ ;_ * "??_ ;_ @_|
|**44**|_ $* #,##0.00_ ;_ $* "??_ ;_ @_|
|**45**|mm:ss|
|**46**|h:mm:ss|
|**47**|mm:ss.0|
|**48**|##0.0E+00|
|**49**|@|
|||
| :- | :- |

## **FAQ**

**列や領域の塗りつぶしを半透明にし、境界線は不透明のままにできますか？**

はい。塗りつぶしの透明度と輪郭は個別に設定できます。これにより、密集した可視化におけるグリッドやデータの可読性が向上します。

**ラベルが重なった場合、どう対処すればよいですか？**

フォント サイズを小さくする、不要なラベル要素（例: カテゴリ）を非表示にする、ラベルのオフセットや位置を調整する、必要に応じて選択されたポイントのみラベルを表示する、または「値 + 凡例」形式に切り替えるなどの方法があります。

**シリーズにグラデーションやパターン塗りつぶしを適用できますか？**

はい。単色塗りつぶしと同様にグラデーションやパターン塗りつぶしも利用可能です。実務ではグラデーションの使用は控えめにし、グリッドやテキストとのコントラストが低下しない組み合わせを避けてください。
