ミニグラフはSPARKLINE関数で作成する
データの傾向を確認したいけど、わざわざグラフを作成するほどでもないことがありますよね? Excelには、セル内にミニグラフを表示できる「スパークライン」機能がありますが、Googleスプレッドシートにはそのようなメニューがありません。
しかし、GoogleスプレッドシートにはSPARKLINE(スパークライン)関数が用意されています。セル範囲とグラフの種類を指定することで、セル内にミニグラフを表示することが可能です。
Googleスプレッドシートでセル中にミニグラフを作成するにはSPARKLINE(スパークライン)関数を利用します。
今回は、よく使われる折れ線グラフと棒グラフについて、SPARKLINE関数を使った利用方法を紹介します。
SPARKLINE関数の構文
Googleスプレッドシートで使えるSPARKLINE関数の構文は、以下の通りです。
SPARKLINE
(データ, {オプション})
- [データ] ...... グラフ化したいセル範囲を指定します。
- {オプション} ...... グラフの種類や最大値、色などを指定します。
{オプション}の指定は間違えやすいポイントです。全体を「{}」で囲むことを覚えておきましょう。
グラフの種類は「"charttype"」に続けて「,」と入力し、以下のいずれかで指定します。省略すると「"charttype","line"」と指定したものとみなされて折れ線グラフになります。
- "line" ...... 折れ線グラフ
- "bar" ...... 積上げ棒グラフ(横方向のバー)
- "column" ...... 縦棒グラフ
- "winloss" ...... 正と負の2つの結果を表す縦棒グラフ
折れ線グラフを作成する
まずは、{オプション}をすべて省略した形式で、折れ線グラフを作成してみましょう。ここではセルB2~G2のデータをグラフ化したいので、引数は「B2:G2」となり、入力する数式は以下になります。
=SPARKLINE(B2:G2)
1SPARKLINE関数を入力する
セルH2に「=SPARKLINE(B2:G2)」と入力します。
2折れ線グラフが表示された
セルB2~G2のデータが折れ線グラフで表示されました。
3数式をコピーする
入力した数式をコピーしました。
折れ線グラフが表示されました。データの傾向を確認するだけならこれで十分ですよね。引数もセル範囲だけと簡単です。
より正確に表示したいなら、縦軸・縦軸の最小値や最大値の指定も可能です。線の色や太さ、セル範囲数値以外のデータや空白セルの扱いのオプションも用意されています。
- "xmin" ...... 横軸の最小値を指定します。
- "xmax" ...... 横軸の最大値を指定します。
- "ymin" ...... 縦軸の最小値を指定します。
- "ymax" ...... 縦軸の最大値を指定します。
- "color" ...... 線の色を指定します。
- "empty" ...... 空のセルの扱いを「"zero"」(0)か「"ignore"」(無視)で指定します。標準で無視("ignore")となります。
- "nan" ...... 数値以外のデータの扱いを「"convert"」(変換)か「"ignore"」(無視)で指定します。標準で無視("ignore")となります。
- "rtl" ...... グラフを右から左に描画するかどうかを「true」または「false」で指定します。標準で左から右(false)となります。
- "linewidth" ...... 線の太さを指定します。
例えば、縦軸の最小値を「0」、線の色は「青」、太さを「2」とすると、数式は以下のようになります。折れ線を意味する「"charttype","line"」は省略しています。色の指定は「"Blue"」といった色の名称のほか、16進数表記のカラーコードでも指定可能です。
=SPARKLINE(B2:G2,{"ymin",0;"color","blue";"linewidth",2})
オプションを指定する順番は任意で構いませんが、「;」で区切ります。「,」の後ろは指定する値です。「"ymin",0」「"color","blue"」「"linewidth",2」がセットと考えてください。
縦軸の最小値を「0」、線の色は「青」、太さを「2」と指定するために、セルH2の数式を「=SPARKLINE(B2:G2,{"ymin",0;"color","blue";"linewidth",2})」と修正しました。
縦棒グラフを作成する
先ほどの数式を修正して、縦棒グラフに変更してみます。グラフの種類を指定するオプション「"charttype","column"」を追加します。また、最大値の色を「赤」としました。
なお、「"charttype","winloss"」と指定すると、数値がプラスかマイナスかを判断できる正負グラフとなります。
=SPARKLINE(B2:G2,{"charttype","column";"ymin",0;"color","blue";"highcolor","red"})
グラフの種類を指定する「"charttype","column"」と最大値の色を「赤」にする「"highcolor","red"」のオプションを追加しました。棒グラフでは「"linewidth"」のオプションは使えないため削除しています。セルH2の数式は「=SPARKLINE(B2:G2,{"charttype","column";"ymin",0;"color","blue";"highcolor","red"})」です。
縦棒グラフで指定できるオプションは以下の通りです。
- "ymin" ...... 最小値を指定します。
- "ymax" ...... 最大値を指定します。
- "color" ...... 棒の色を指定します。
- "lowcolor" ...... 最小値の色を指定します。
- "highcolor" ...... 最大値の色を指定します。
- "firstcolor" ...... 最初の棒の色を指定します。
- "lastcolor" ...... 最後の棒の色を指定します。
- "negcolor" ...... すべての負の縦棒の色を指定します。
- "empty" ...... 空のセルの扱いを「"zero"」(0)か「"ignore"」(無視)で指定します。標準で無視("ignore")となります。
- "nan" ...... 数値以外のデータの扱いを「"convert"」(変換)か「"ignore"」(無視)で指定します。標準で無視("ignore")となります。
- "axis" ...... 軸を表示するかどうかを「true」または「false」で指定します。標準で非表示(false)となります。
- "axiscolor" ...... 軸の色を指定します。
- "rtl" ...... グラフを右から左に描画するかどうかを「true」または「false」で指定します。標準で左から右(false)となります。
横棒グラフを作成する
横棒グラフを作成する場合はオプションを「"charttype","bar"」とします。セル範囲を指定した場合は積上げ横棒グラフになりますが、小さなセルの中に積上げグラフを表示してもあまり意味はありません。
単一のセルを参照して大小比較することがほとんどでしょう。ここでは合計値を横棒グラフで表示してみました。入力した数式は以下の通りです。
=SPARKLINE(H2,{"charttype","bar";"max",2000})
単一のセルH2を参照して、 グラフの種類を指定する「"charttype","bar"」と最大値を指定する「"max",2000」のオプションを指定しました。セルI2の数式は「=SPARKLINE(H2,{"charttype","bar";"max",2000})」です。
横棒グラフで指定できるオプションは以下の通りです。
- "max" ...... 最大値を指定します。
- "color1" ...... 1つめの棒の色を指定します。
- "color2" ...... 1つめの棒の色を指定します。
- "empty" ...... 空のセルの扱いを「"zero"」(0)か「"ignore"」(無視)で指定します。標準で無視("ignore")となります。
- "nan" ...... 数値以外のデータの扱いを「"convert"」(変換)か「"ignore"」(無視)で指定します。標準で無視("ignore")となります。
- "rtl" ...... グラフを右から左に描画するかどうかを「true」または「false」で指定します。標準で左から右(false)となります。
データの傾向を把握するだけなら、SPARKLINE関数にセル範囲のみを指定するだけでも十分ですよね。引数によってグラフの種類を変更できるのも、関数ならではの動作です。ぜひ活用してください。