📊
【スプレッドシート】棒グラフの色を項目ごとに動的変更する
目的
Google スプレッドシートや Excel などのスプレッドシートで作成した棒グラフでは、項目ごとに固定の色を設定できますが、値の大きさやグラフを参照する日時など細かい条件で動的に色を変更するということができません。
この方法では、棒グラフの各項目の色を任意の条件で動的に色変更することができます。
今日の曜日項目の色を変更する例
やり方
アプローチとしては、普通の「棒グラフ」ではなく「積み上げ棒グラフ」でグラフを作成します。
積み上げ棒グラフは、一つの項目に対して複数の値を縦に並べるもので、その値ごとに色を変更することができます。積み上げグラフの項目のうち一つの値を 0 とし、もう一つを実際の値とすることで棒グラフの色を分けつつ普通の棒グラフのように見せるというやり方です。
例
以下のようなデータがあるとします。
このままでは普通の棒グラフしか作成できないため、積み上げ棒グラフ用の列を 2 列追加します。この列は完全にグラフ表示のためだけの列なので邪魔であれば列を非表示にしてしまっても構いません。
そして、どちらか一方が 0 となるような条件を関数などを作成します。例えば、今日の曜日の色をついける場合は、以下のような関数となります。
X軸を項目列、系列を積み上げ1、2列とした積み上げグラフを作成します。
これにより、動的にグラフ項目の色を変更するようになります。
関数は柔軟に変更できるので 2 つ以上の項目の色を同時に変更したり、積み上げ項目も 3 つ以上に増やして色を 3 色以上に増やすことも可能です。
Discussion