【Python×Excel】openpyxlで折れ線グラフを作る【デザインレシピ】

スポンサーリンク
Python外部ライブラリ(openpyxl)_グラフの作成_折れ線_rev0.2 openpyxl

Japanese | English

本記事では、ExcelをPythonで操作する「openpyxl」ライブラリの解説をしていきます。

Excelには多くの機能が搭載されておりますので、ひと記事ですべてを網羅的に解説することはできません。大項目(機能)ごとに分けて連載記事【Python×Excel】としてまとめています。

openpyxl_目次_完結版_rev0.1
図1. 連載【Python×Excel】のコンテンツ一覧

前回の記事(連載7回)では、openpyxlによる「グラフの作成手順の概要」と「グラフを構成する要素のクラスやオブジェクト」について紹介しました。

今回からは【実践編】としてサンプルコードを交えて、より具体的にグラフ作成の手順を解説していきます。

実際のコードを追うことで、前回の【概要編】で解説した「グラフ作成における一連の流れ」や「グラフを構成するオブジェクトの階層構図」「各種属性について」をより深く理解することができるでしょう。openpyxlを使うことで、簡単に実用的なグラフが描画できることを実感してみてください。


この記事を読むことで、次のようなことが「できるわかる」ようになりますので最後までお付き合いください。

この記事で学べること

  • 折れ線・棒グラフといった系列ごとに同じカテゴリを共有するタイプのグラフの作成方法
  • 折れ線について「グラフを構成する要素の追加」や「プロットエリアの系列データにマーカーや線(ライン)を施す」方法について

なお、グラフそのものの説明ではなく、Pythonプログラムでグラフを作成する際のキーポイントや特殊属性(プロパティ)について解説していきます。グラフそのももの説明は各種Excelの専門書を参考にして下さい。

本サイトでの紹介例は一例です。また、関数などの省略可能なオプション引数などについては割愛していますので、詳細や不明点などは必要に応じて公式サイトなどを参照してください。

【公式サイト】https://openpyxl.readthedocs.io/en/stable/index.html

スポンサーリンク

1. 「折れ線グラフ」の作成手順について

oenpyxlでグラフ作成をする手順(フロー)について解説します。

折れ線、棒グラフなど、各系列によって同じ項目(X軸の値)を共有するタイプのグラフは、全ての系列データをまとめて「Referenceオブジェクト」として一括参照できます。図2にフロー全体を体系化しました。

図2. グラフ作成の手順(系列データを一括参照)

図2のブロック(~)について解説します。

.Chartオブジェクトを取得する

Chartオブジェクト はグラフ本体(フレームワーク)となります。

グラフのタイプごとに専用のクラスが用意されています。今回の「折れ線グラフ」であれば LineChartクラス からLineChartオブジェクトを取得します。

.Chartオブジェクトにグラフの要素を追加する

グラフを構成する要素には、タイトル、凡例、軸のタイトルなどがあります。

これらは、Chartオブジェクト 配下の属性(プロパティ)によって追加・設定します。

.データの参照情報をReferenceオブジェクトとして定義する

グラフが参照するセル範囲を Referenceオブジェクト として定義します。参照するセル範囲は、「系列名を含めたデータ領域」と「項目名」の2つです。(図3) Referenceクラス は<関連記事>を参照願います。

python_Referenceオブジェクトの参照領域(データ領域_項目名領域)_rev0.2
図3. Referenceオブジェクトが管理する参照範囲

.Chartオブジェクトにデータを設定する

で定義したデータ領域を指す Referenceオブジェクトadd_data() でChartオブジェクトに追加します。

.Chartオブジェクトに項目名(カテゴリ)を設定する

で定義した項目名(カテゴリ)を指す Referenceオブジェクトset_categories() でChartオブジェクトに追加します。

.系列データごとに装飾効果を適用する

グラフの個々の系列データは Seriesオブジェクト として管理されています。マーカーやライン、塗り潰しなどプロットエリア内の装飾効果は、Seriesオブジェクト配下の属性にて設定します。

Seriesオブジェクトは、Chartオブジェクトの seriesプロパティ で取得できます。

.Worksheetにグラフを挿入する

最後にWorksheetオブジェクトの add_chart() の引数に、これまでに定義してきたChartオブジェクトとグラフの挿入位置(セルアドレス)を指定してワークシートに挿入します。

以上がグラフ作成の手順となります。

次節からは、具体的なサンプルコードを交えながら詳細解説していきます。今回は、「折れ線グラフ(LineChart)」の作例を紹介します。

スポンサーリンク

2. openpyxlと「折れ線グラフ」ついて

Python_基本文法_内包表記

折れ線グラフ」とは、X軸(項目名)とY軸(値)の対となるデータをプロットし、それぞれのプロット同士をラインで結ぶ、もっとも一般的な形態のグラフです。データの参照情報は、全ての系列データを「Referenceオブジェクト」として一括にまとめ管理します。

同じようなグラフに「散布図」がありますが、違いはX軸の値(カテゴリ)を各系列間で共有する点にあります。

折れ線グラフの本体(Chartオブジェクト)を提供するクラスは、表現の次元数により、平面(2D)ではLineChartクラス と立体(3D)では LineChart3Dクラス の2種類があります。

LineChartオブジェクト

<折れ線グラフ>

from openpyxl.chart import LineChart

LineChart(marker, smooth)

引数: marker :マーカーの有無を設定する(デフォルトNone) True:マーカー有効/False:マーカー無効

引数: smooth :滑らかなラインを設定する(デフォルトNone) True:有効/False:無効

ほか省略可能な引数は多数,全てオプショナル引数

戻り値: LineChartオブジェクト


<折れ線(3D)グラフ>

from openpyxl.chart import LineChart3D

LineChart3D(gapDepth, marker, smooth)

引数: gapDepth :床面の奥行を調整する(デフォルトNone)

引数: marker :マーカーの有無を設定する(デフォルトNone) True:マーカー有効/False:マーカー無効

引数: smooth :滑らかなラインを設定する(デフォルトNone) True:有効/False:無効

ほか省略可能な引数は多数,全てオプショナル引数

戻り値: LineChart3Dオブジェクト

また、LineChartオブジェクトがもつ grouping属性 によって、折れ線グラフの形態を「”standard“(標準)」「”stacked“(積み上げ)」「 “percentstacked“(100%積み上げ)」の3つの中から選択することができます。表現の次元数と各形態の特徴は図4のとおりです。

折れ線グラフの種類
図4. 折れ線グラフの種類

プロットエリアの構成要素には、マーカー(Markerオブジェクト)やライン(Lineオブジェクト)などがあり、系列ごとに Seriesオブジェクト で管理されています。

以上、折れ線グラフ(LineChartオブジェクト)の概要についてでした。次節からは、具体的なサンプルコードを示しながら作成手順をステップごとに解説していきたいと思います。

スポンサーリンク

3. 折れ線グラフ(LineChart)の実装

それでは、次のような”仕様”をもつ折れ線グラフの実装例をステップごとに解説していきます。

実装する「折れ線グラフ」の仕様
  • 4つの系列をデータとしてもつ
  • メインタイトルと軸のタイトルをもつ
  • 各カテゴリにマーカーをつける
  • 系列ごとに線の種類や色を設定する
  • 凡例をプロットエリアの下側に配置する

3.1 「折れ線グラフ」の概要を定義する【Step.1】

使用するクラスのインポートから、グラフ本体となる LineChartオブジェクト、それからタイトルや凡例などのグラフエリアを構成する要素を次の<List1>で定義します。

なお、このプログラムで使用するブック(.xlsx)ファイルは、以下からダウンロードできます。

from openpyxl import load_workbook

# グラフ作成に必要なクラスをインポート
from openpyxl.chart import LineChart, Reference, Series
from openpyxl.utils.units import pixels_to_EMU


wb = load_workbook('Graph_DataSource.xlsx') # Excelファイル(データ)の読込み
ws = wb.worksheets[0]    # Worksheetオブジェクト

# [A] グラフの構成要素の準備 --------------------------------------------------

 c1 = LineChart()   # Chartオブジェクト(折れ線グラフの本体)を取得

# グラフの大きさを調整する
c1.width = 18     # デフォルト(15cm)
c1.height = 10    # デフォルト(7cm)


# グラフのタイトルを設定(メイン、軸)
c1.title = "Line Chart"              # メインタイトル
c1.x_axis.title = 'Month'            # X軸のタイトル
c1.y_axis.title = 'Precipitation'    # Y軸のタイトル

# グラフの凡例
c1.legend.position = 'b'     # 凡例の配置位置

# グラフのスタイル
c1.style = 30               # テーマカラーの設定
c1.grouping = "standard"     # 折れ線グラフのタイプ(標準)

# <List2>へ続く

13行目で LineChartオブジェクトLineChartクラス から取得(変数c1に格納)しています。以降の処理では、この「LineChartオブジェクト」配下のメソッドや属性(プロパティ)を使ってグラフを構築していきます。

16,17行目:【グラフエリアのサイズ指定】

グラフの大きさはデフォルトでは(17cm×7cm)で作成ますが、個別に指定する場合には、width/height属性 で設定しています。

22,23行目:【タイトル(メイン・軸)】

メインタイトルは title属性 で設定します。X軸/Y軸のサブタイトルは各軸のオブジェクトに対して title属性 で設定します。軸のオブジェクトは x_axis/y_axis属性 で取得しますが、今回のコード例では属性チェーン(属性.属性)で一度に設定しています。

26行目:【凡例を設定する】

凡例のオブジェクトは legend属性 にて取得します。デフォルトでは凡例は自動で表示されますが、「legend属性」に“None”を設定することで非表示にすることができます。また、凡例の配置は position属性 で指定することができます。今回の例では、’b’と指定してプロットエリアの下側に配置するように設定しています。配置位置には、これ以外にも‘r’,’l’,’t’,’tr’があります。

また、グラフ全体のテーマカラーは、style属性 に規定のインデックスを設定することで簡単に変更することができます。(図5)グラフのスタイルについては、この後の<5.2項>でも解説します。

折れ線グラフのスタイル_簡易版_rev0.1
図5. style属性によるテーマカラーの変更

3.2 「折れ線グラフ」の参照情報を定義する【Step.2】

<List1>に引き続き<List2>を追記してください。<List2>では、データの参照情報を LineChartオブジェクト に追加しています。

# [B] データの参照情報を取得する --------------------------------------------------

# データ(系列名を含めた)となるセル範囲の参照オブジェクトを取得
# 3(C)列-6(F)列、4行目-10行目を参照
data = Reference(ws, min_col=3, max_col=6, min_row=4, max_row=10)

# 項目名(カテゴリ)となる列の参照オブジェクトを取得
# 2(B)列、5行目-10行目を参照
category = Reference(ws, min_col=2, max_col=2, min_row=5, max_row=10)

# Chartオブジェクトにデータと項目を設定する
c1.add_data(data, titles_from_data=True)  # 第2引数にTrueを指定して先頭要素を系列名とする
c1.set_categories(category)                # 項目(カテゴリ)を設定

まず、5行目ではデータの参照情報を Referenceオブジェクト として定義します。(図6の赤枠線)

この際、系列名となるセル範囲(図6の青破線)も含めた範囲を指定するようにします。

次に9行目では、項目名(カテゴリ)となる参照情報の「Referenceオブジェクト」も同じように定義します。(図6の紫の枠内)

折れ線グラフのセル範囲の参照情報_List2_rev0.1
図6. データと項目名の参照情報(Referenceオブジェクト)

そして、12行目の add_data()メソッド でデータ情報を、13行目の set_categories()メソッド で項目(カテゴリ)情報をそれぞれ「LineChartオブジェクト」に設定します。

また、add_data()メソッドでは、引数:title_from_data に”True“を設定することで、データ領域の先頭要素を系列名と識別するようにします。

3.3 系列の書式設定(マーカー)【Step.3】

<List2>の続きに<List3>を追記してください。<List3>では4つある系列に、マーカーの書式設定を施すブロックになります。

系列データは、 Seriesコレクション としてまとめられているので、個々の系列データに書式を設定するには、コレクションから一つずつ要素(Seriesオブジェクト)を取り出す必要があります。

# [C] 各系列ごとにマーカとラインを設定する

# <系列1>のSeriesオブジェクト -----------------------------------------------------------
ser1=c1.series[0]

## マーカー設定
ser1.marker.symbol = 'circle'     # マーカーの形状(円)を選択
ser1.marker.size = 8              # マーカーの大きさを設定(整数)
ser1.marker.graphicalProperties.solidFill = 'FF0000'       # マーカーの塗り潰し色を設定
ser1.marker.graphicalProperties.line.solidFill = '0F0F0F'  # マーカーの枠線の色を設定


# <系列2>のSeriesオブジェクト -----------------------------------------------------------
ser2=c1.series[1]

## マーカーの設定
ser2.marker.symbol = 'diamond'    # マーカーの形状(ひし形)を選択
ser2.marker.size = 9              # マーカーの大きさを設定(整数)
ser2.marker.graphicalProperties.solidFill = '0202F2'       # マーカーの塗り潰し色を設定
ser2.marker.graphicalProperties.line.solidFill = '00F0F'   # マーカーの枠線の色を設定


# <系列3>のSeriesオブジェクト -----------------------------------------------------------
ser3=c1.series[2]

## マーカーの設定
ser3.marker.symbol = 'triangle'   # マーカーの形状(三角形)を選択
ser3.marker.size = 9              # マーカーの大きさを設定(整数)
ser3.marker.graphicalProperties.solidFill = '00FF11'       # マーカーの塗り潰し色を設定
ser3.marker.graphicalProperties.line.solidFill = '00F0F'   # マーカーの枠線の色を設定


# <系列4>のSeriesオブジェクト -----------------------------------------------------------
ser4=c1.series[3]                 # 系列3のマーカー設定なし
4行目 :【系列(Seriesオブジェクト)の取得】

series属性 にて、プロットエリア内のすべての系列(Seriesコレクション)を取得しています。コレクションはインデックスで個々の要素にアクセスすることができます。ここでは「0」を指定して<系列1>となる「Seriesオブジェクト」を取得しています。その他<系列2,3,4>についても同様

7~10行目 【マーカーの設定】

<系列1>のマーカーに関する設定を行っています。マーカーは marker属性 でオブジェクトを取得できます。以後はさらにこの「Markerオブジェクト」配下の属性を繋いで(属性チェーン)詳細設定をしていきます。その他<系列2,3,4>についても同様

マーカーの形状は symbol属性、サイズは size属性、塗り潰し・枠線については graphicalProperties属性 を介してさらに属性を繋げていきます。次の<表1>で「Markerオブジェクト」配下の属性について整理しました。

プロパティ名機能その他・関連オブジェクト
symbolマーカーの形状を設定する例(’triangle’ ,‘plus’, ‘diamond’等など)
sizeマーカーのサイズを設定する例(7.0など浮動小数点)
graphicalProperties.solidFillマーカーの塗り潰しFF0000などのRGB指定の他、ColorChoiceオブジェクト により設定できる
graphicalProperties.line.solidFillマーカーの枠線の色FF0000などのRGB指定の他、ColorChoiceオブジェクト により設定できる
表1. Markerオブジェクトの主な属性

symbol属性」に指定するマーカーの形状は{‘plus, ‘diamond’, ‘square’, ‘dash’, ‘dot’, ‘x’, ‘auto’, ‘circle’, ‘star’, ‘picture’, ‘triangle’}の中から選択します。

Excelのマーカー設定ウィンドウと各属性の対応関係を図7に示します。

Python_Markerオブジェクト_rev0.2
図7. Markerオブジェクトの属性指定

3.4 系列の書式設定(ライン)【Step.4】

<List3>の続きに次の<List4>を追記してください。<List4>では4つある系列に「ラインの種類・色」の書式設定を施すブロックになります。

# [D] 各系列ごとにラインを設定する

# <系列1>のSeriesオブジェクト -----------------------------------------------------------
ser1=c1.series[0]

## のライン設定 
ser1.graphicalProperties.line.solidFill = '00AAAA'         # 線の色を設定する
ser1.graphicalProperties.line.dashStyle = "dashDot"        # 線のタイプを設定する 
ser1.graphicalProperties.line.width = pixels_to_EMU(2.5)   # 線の太さを設定する EMUsで指定する


# <系列2>のSeriesオブジェクト -----------------------------------------------------------
ser2=c1.series[1]

## ラインの設定
ser2.graphicalProperties.line.solidFill = 'AAAA00'         # ラインの色を設定する
ser2.graphicalProperties.line.dashStyle = "sysDashDot"     # ラインのタイプを設定する 
ser2.graphicalProperties.line.width = pixels_to_EMU(2.5)   # ラインの太さを設定する EMUsで指定する


# <系列3>のSeriesオブジェクト -----------------------------------------------------------
ser3=c1.series[2]

## ラインの設定
ser3.graphicalProperties.line.noFill=True     # ラインを無効にする

# <系列4>のSeriesオブジェクト -----------------------------------------------------------
ser4=c1.series[3]

## ラインの設定
ser4.smooth=True        # 滑らかな曲線を引く


# グラフの貼り付けとブックの保存 ----------------------------------------------------------
ws.add_chart(c1, "B13") # B13セルを左上にグラフを貼り付ける
wb.save('LineChart_example1.xlsx')
7~9行目 【ラインの設定】

<系列1>のラインに関する設定を行っています。ラインはSeriesオブジェクト配下のgraphicalProperties属性line属性 を続けて「Lineオブジェクト」を取得します。

Lineオブジェクトにも関連する多くの属性がありますが、今回の例ではラインの色を solidFill属性 、ラインの種類を dashStyle属性 、太さを width属性 で設定しています。

以下<表2>で「Lineオブジェクト」配下の属性について整理しました。

プロパティ名機能その他・関連オブジェクト
solidFill線の色を設定する“00AAAA”などRGB指定の他 ColorChoiceオブジェクト で設定
dashStyle線の種類を設定する“sysDot”など規定値を指定する
width線の太さを設定するEMUsもしくはutilモジュールで単位変換して設定
noFill線をなくすTrue(有効)/False(無効)
表2. Lineオブジェクトの主な属性

線の種類は「dashStyle属性」で指定しますが、組込みスタイルとして{‘sysDashDot’, ‘dashDot’, ‘sysDash’, ‘dash, ‘dot, ‘lgDashDotDot’, ‘lgDashDot’, ‘sysDot, ‘sysDashDotDot’, ‘solid’, ‘lgDash’}が用意されています。

Lineオブジェクトには、図8のように、これ以外にも数多くの設定可能な項目があります。(ほとんど、デフォルト設定のままで良いかと思います。) 詳細は割愛しますので、より細かい指定をしたい場合は以下の公式ドキュメントなどを参考にして下さい。(基本的な適用方法は同様です。)

公式ドキュメント<openpyxl.drawing.line module>

https://openpyxl.readthedocs.io/en/stable/api/openpyxl.drawing.line.html#openpyxl.drawing.line.LineProperties
Lineオブジェクトの概要
図8. Lineオブジェクトの属性指定

以降、その他の<系列2,3,4>も同じように「Seriesオブジェクト」を取得して設定を行います。

<系列3>と<系列4>のライン設定について補足します。

Lineオブジェクトには noFill属性 があり、“True”に設定すると“ライン無し”(マーカーは有効)にできます。また、Seriesオブジェクトの smooth属性 を“True”にするとプロットに対して滑らかな曲線を描画できます。


ここまでのサンプルコードを実行した結果は図9のようになりました。タイトルやマーカー・ラインの装飾が施されています。下記より実行結果をダウンロードして頂けます。

Python_折れ線グラフ_平面の実行結果rev0.1
図9. Listの実行結果

4. 折れ線グラフ(LineChart3D)の実装

これまで紹介した通常の平面グラフに加え、立体的(3D)な折れ線グラフにも対応ができます。

3Dグラフは、LineChart3Dクラス から LineChart3Dオブジェクト を取得します。つまり、<List1>の4行目と13行目を<List5>のように差し替えます。

# 立体折れ線グラフの ”LineChart3Dクラス" のインポート
from openpyxl.chart import LineChart3D

#--------------- 途中<List1>と同じ -----------------

# Chartオブジェクト(折れ線グラフ3Dの本体)を取得
c1 = LineChart3D()

#--------------- 途中<List1>と同じ -----------------

その他は、通常の平面グラフの作り方とほぼ同じです。ポイントを整理すると、次の通りです。

Check Point

・系列は Seriesオブジェクト で取得でき、個別にラインの書式指定ができる。(2Dと同じ)

マーカーは設定することはできない。

grouping属性 による3形態(標準・積上げ、100%積上げ)を設定できる。(2Dと同じ)

・プロットエリアに系列名が表示されるので、凡例は不要だが設定すること自体はできる。(2Dと同じ)

次の<List6>は系列(Seriesオブジェクト)の書式設定している例です。

立体グラフでは、マーカーの設定はできませんが、<List6>のようにラインのエッジや色と幅(厚み)を指定できますその他、2Dで指定できた線の種類(dashStyle属性)、滑らかな曲線(smooth属性)、ライン無し(noFill)などは設定しても反映はされませんので、注意してください。

# <系列1>のSeriesオブジェクト -----------------------------------------------------------
ser1=c1.series[0]

## のライン設定 
ser1.graphicalProperties.solidFill = '00AAAA'         # ラインの幅の色を設定する
ser1.graphicalProperties.line.solidFill = '00AAAA'    # ラインの縁の色を設定する
ser1.graphicalProperties.line.width = pixels_to_EMU(2.5)    # ラインの太さを設定する EMUsで指定する

<List5><List6>による立体(3D)折れ線グラフの作例は以下のようになります。

立体表現と<系列1>について指定したラインの書式が反映されています。

Python_立体(3D)折れ線グラフの実行結果
図10. List5/6による立体折れ線グラフの描画

5. 折れ線グラフの種別とスタイル<補足>

ここまで折れ線グラフについて、サンプルコードを交えて具体的な手順を解説してきました。

本節では、折れ線グラフのその他の「形態」や「スタイル」について補足説明をします。

5.1 折れ線グラフの形態について

図4で示したように、折れ線グラフの形態には、「“標準”」「“積上げ”」「“100%積上げ”」の3つのタイプがあります。それぞれ、LineChartオブジェクト配下の grouping属性 に「”standard“」「”stacked“」「”percentStacked“」を指定することで対応できます。

次の<List7>を<List1>から<List3>の間に挿入します。

# グラフの形態を設定する
# 以下の3つのオプションから一つを選択する。

# "standard" 【標準(デフォルト)】
c1.grouping = "standard"

# stacked"  【積み上げ】
c1.grouping = "stacked"

# "percentStacked" 【100%積み上げ】
c1.grouping = "percentStacked"

“standard”は先の図9と同じですので、”stacked(積上げ)”, “percentStacked(100%積上げ)”を指定した場合の実行結果を以下に示します。(図11)

Python_折れ線グラフの3つの形態
図11. List7の実行結果(折れ線グラフの3つの形態)

5.2 スタイル設定について

<List1>の解説でも少し触れましたが、「LineChartオブジェクト」には style属性 をもっており、既定の「組込みスタイル」を適用することができます。

あらかじめ用意されている、組込みスタイルは全部で48種類です。

48種類すべての書式をまとめたのが次の<表3><表4>となります。「線の色」「幅」「プロットエリアの色合い」「グラフ全体の色合い」の組合せの中から選べます。

python_openpyxl_折れ線グラフのスタイル➀
表3. スタイル設定一覧➀

図12は<表3>のスタイル一覧の中から Style属性 4(左)、11(中央)、26(右)に設定した例です。

python_折れ線グラフのスタイル➀_描画例
図12. スタイル設定の例(style=4, 11, 26)

python_openpyxl_折れ線グラフのスタイル②
表4. スタイル設定一覧②

図13は<表4>のスタイル一覧の中から Style属性 35(左)、42(右)に設定した例です。

python_折れ線グラフのスタイル②_描画例
図13. スタイル設定の例(style=35, 42)

どれもシンプルな見栄えで扱いやすく、手早くグラフをデザインしたい場合には便利です。

また、Seriesオブジェクト によって系列ごとに「線」や「マーカー」を個別に設定している場合は、そちらが優先されます

6. まとめ

いかがでしたでしょうか?

Excelを操作する外部ライブラリ「openpyxl」を使用して、「折れ線グラフ」の作成手順を実例を交えて紹介しました。

前回のクラスやオブジェクトの説明だけでは分かりずらい点もあったかもしれませんが、実際のコードを読むことで理解が深まったと感じて頂けたのではないでしょうか。

また、グラフ作成のコードにはある程度パターンがあるので紹介したサンプルコードを参考にアレンジしてみて下さい

Excelのグラフには、「折れ線」のほかにもさまざまなタイプがあります。「棒グラフ」「散布図」「バブルチャート」など良く使われるタイプを中心に解説していますので、是非そちらも参考にして下さい。

ここまでの内容をまとめておきましょう。

.「折れ線グラフ」のように複数の系列が同じ項目(カテゴリ)を共有するタイプのグラフを定義する際の注意点は、以下の2点です。

  • Referenceオブジェクト にてデータの参照情報を複数系列をまとめて一括取得する。
  • Seriesオブジェクト で系列データを個別に追加していくことはできない。(後から特定の系列を追加できない。)

.「折れ線グラフ」のラインやマーカーを個別指定する際は、各系列情報(Seriesオブジェクト)にアクセスして、配下のオブジェクトにて設定する。(ラインは line属性、マーカーは marker属性 にてそれぞれオブジェクトを取得する)

.「折れ線グラフ」には、通常の平面タイプの他に立体(3D)タイプがありそれぞれ専用のクラスが用意されている。また、形態には「“標準”」「“積上げ”」「“100%積上げ”」がありgroup属性 で指定できる。

最後までお読みいただきありがとうございました。

Japanese | English

タイトルとURLをコピーしました