見出し画像

[Googleスプレッドシート]グラフの横軸を日付にして任意の目盛間隔を設定する

ググっても見つからなかったまとめシリーズ。
グラフの見た目に拘りたい人向けの話です。


できるもの

こんな感じで好きな日数単位で横軸を設定したグラフが作りたい人向けの小技です。

成果物イメージ

普通にやると引っかかること

こんな感じにX(横軸)に日付を持つデータからグラフを作る場合

グラフのソースデータ

できあがるグラフの横軸はよくわからない単位で分割されています。

そのまま作成した折れ線グラフ

グラフエディアでカスタマイズ>グリッドラインと目盛>横軸、と選択すると、主目盛線の表示モードが「」、主グリッドラインと主目盛のの数が「自動」となっています。

横軸の設定

ではこの自動を1に変えれば1日間隔に、7に変えれば7日間隔に変わるかというと……

数1だと目盛が0個になってしまいました。

主グリッドラインと主目盛のの数=数1のグラフ

数7だと目盛が6個になってしまいました。

主グリッドラインと主目盛のの数=数7のグラフ

他にも細かく値を変えていくとこの「数」という単位は、なんとなく分割単位を指定するパラメータだけど実際には勝手に近似値で都合のいい値が使用されるっぽいことがわかってきます。

ユーザが目盛の間隔を任意で指定するにはどうしたらいいのか?
それには主目盛線の表示モードを「数」から「間隔」に変更する必要があります。

ところがこの主目盛線の表示モードを変えようとすると、「間隔」がグレーアウトされていて「数」から変更できない……!!

間隔が選択できない状態

やり方

原因

例によってググっても参考になる記事が出てこなかったので自分で試行錯誤したところ、値が数字の時は主目盛線の表示モードで間隔が選べることがわかりました。

横軸が数字のグラフ例

ここまでわかれば解決は簡単です。

解決

DATEVALUE関数で日付を変更した新しい横軸データを作成します。

新横軸データ例

この新しい横軸は数字なので当然、間隔を選択できるようになります。

間隔が選択可能になった横軸

とはいえこのままだと横軸の表示が数字だと困るので、今度は横軸>表示形式、と選択して「ソースデータの表示形式」から「日時」に変更してあげます。


表示形式を選択
日時を選択

あとは任意の日時形式を選ぶだけ。

日付の形式

横軸が日付に再変換されました。

表示形式が日付になったグラフ

あとは間隔を設定しあげるだけです。
DATEVALUEは見ての通り1日増えると1増えるので、単純に間隔が1なら毎日、間隔が7なら1週間間隔になります。

間隔1のグラフ
間隔7のグラフ

さらに補助目盛線の間隔を設定してあげれば1週と1日とか4週と1週とかグリッドラインを細かくカスタマイズできるようになります。

主間隔7、補助間隔1のグラフ

あとは用途に応じて細かくカスタマイズするだけですね。
一旦数字に変換すればいいとわかれば簡単だけど、わかるまで結構時間を無駄にしてしまいました……。■

いいなと思ったら応援しよう!