- インストール
- 基本操作
- 電子工作向けプログラミングの基本
- Excel向けプログラミングの基本
- scikit-learnでの機械学習
- matplotlibでのデータの可視化
- Web関連プログラミング
- RPA関連プログラミング
- その他の各種プログラミング
- リファレンス
系列が複数ある棒グラフの表示
このページでは、系列が複数ある棒グラフを表示する手順を解説します。
1.グラフの元データの作成
Excelのシートに、グラフの元となるデータを入力します。
以下の画像のように、X軸のラベルにする値と、棒グラフとして表示したい値を入力します。
表示する値は、隣接するセル範囲に入力します。

2.ブロックの追加
「グラフの作成と表示」のページの手順に従って、最低限必要なブロックを追加します。
3.値のセル範囲に応じて繰り返す
「繰り返し」グループにある、範囲を指定して変数の値を変化させながら繰り返すブロックを使って、値のセル範囲に応じて繰り返しを行います。
上のExcelのシートの場合だと、値はB列(2列目)~D列(4列目)に入っていますので、変数の値を2から4まで1ずつ変化させる繰り返しを使います。

このブロックを、グラフの初期化と、グラフの表示のブロックの間に入れます。
4.棒グラフの作成を繰り返す
繰り返しの中に棒グラフの作成のブロックを入れて、個々の系列を順に棒グラフにします。
このブロックは横に長いので、画面の横幅が狭いと、扱いづらい場合があります。
その時は、ブロックを右クリックして、メニューの「外部入力」をクリックすると、縦長の形に変えることができます。
また、縦長の状態のブロックを右クリックして、メニューの「インライン入力」をクリックすると、横長の形に変えることができます。
4-1.棒幅と棒位置の指定
複数の系列がある棒グラフを作る際には、「棒幅」と「棒位置」のパラメータで、棒グラフの棒の幅と、棒を描画する位置を指定します。
目盛り1つ分の幅が100%にあたります。
また、棒位置は目盛りの真上が0%にあたり、マイナスの値を指定すると棒が左にずれ、プラスの値を指定すると右にずれます。
指定した位置に、棒の中央が位置するように描画されます。
基本的には、「棒幅」と「棒位置」のパラメータには、以下のような値を設定すると良いです。
すると、それぞれの系列の棒がぴったりとくっついた状態で並び、また隣の目盛りとの間に、目盛り1つ分の10%の幅の隙間ができます。
| 棒幅 | 90÷系列の数 |
|---|---|
| 棒位置 | (列番号の変数-(左端の列番号+右端の列番号)÷2)×棒幅 |
例えば、先ほどのデータの例のように、ExcelのシートのB列(2列目)からD列(4列目)の3列にデータが入力されているとします。
この場合、上記の式の個々のパラメータの値は、以下のようになります。
| 系列の数 | 3 |
|---|---|
| 左端の列番号 | 2 |
| 右端の列番号 | 4 |
したがって、棒幅には、90÷3(系列の数)=30を指定します。
また、棒位置の式の中の(左端の列番号+右端の列番号)÷2は、(4+2)÷2=3になります。
ここから、棒位置のパラメータには、「数式」グループの計算のブロックを使って、(列番号の変数-3)×30を表す式を指定します。
4-2.色の指定
複数の系列を棒グラフにする場合、個々の系列の色を別々にして、系列を見分けられるようにします。
「線色」と「内部色」のパラメータに、「論理」グループの「null」のブロックを指定すると、matplotlibのデフォルトの色の組み合わせを使うことができます。
![]()
色を自分で指定したい場合は、繰り返しの前に、「リスト」のグループの「以下を使ってリストを作成」のブロックで、使いたい色のリストを作っておきます。
そして、リストから色を順に取り出した色を、「棒グラフを作成」のブロックの「線色」や「内部色」のパラメータに指定します。
5.事例
色を指定しない場合とする場合との、2つの例を紹介します。
5-1.色を指定しない(matplotlibのデフォルトの色を使う)場合
以下のプログラムは、このページの先頭にあるグラフを表示する例です。
「2.グラフの元データの作成」のところであげたExcelのシートを元に、棒グラフを表示します。
この事例のファイルは、こちらからダウンロードすることができます。
また、この事例で使用しているExcelのデータのファイルは、こちらからダウンロードすることができます。
この事例を実行する際には、Excelであらかじめデータのファイルを開いておきます。
5-2.色を指定する場合
以下のプログラムは、先ほどのプログラムを修正して、色を指定するようにした例です。
棒グラフを描く前に、変数line_colorsとinner_colorsに、3つの色が入ったリストを代入しています。
そして、棒グラフを作成する際に、line_colorsとinner_colorsから色を順に取り出して、線色/内部色のパラメータに指定しています。
繰り返しのブロックで変数iを2から4まで順に変化させるので、i-1は1から3まで変化することになります。
この値を使って、リストの1番目、2番目、3番目と順に色を取り出すようにしています。
この事例を実行すると、以下のようなグラフが表示されます。
この事例のファイルは、こちらからダウンロードすることができます。
また、この事例で使用しているExcelのデータのファイルは、こちらからダウンロードすることができます。
この事例を実行する際には、Excelであらかじめデータのファイルを開いておきます。