ggplot2でお手軽ヒートマップ

式とグラフの備忘録です。

時間系列の記憶は、人間の記憶の中でも頼りになる方。超整理法のアドバンテージは、ここにあったはず。 で、月間レポートを書く場合に、時間系列のヒートマップだと、人間の記憶とレポートの記録が、上手くつながる気がする。なので、ヒートマップ(時系列)が好き。

ggplot2は、簡単にヒートマップが出せる。

例として、このブログのGoogle Analyticsの4月のデータ。
時間、日付け、訪問数、平均PVの4つが入ったデータフレーム。

R> str(abc)
‘data.frame’:    720 obs. of  4 variables:
$ hour  : int  0 1 2 3 4 5 6 7 8 9 …
$ date  : Date, format: “2011-04-01” “2011-04-01” “2011-04-01” “2011-04-01” …
$ visits: int  1 1 0 0 1 0 1 0 2 3 …
$ apv   : num  1 1 0 0 1 0 1 0 1 1 …

ggplot2を読んで、ggfluctuation。データ型は、テーブル型でもいいし、3カラムのデータフレームでもいい。今回は、まずはapv(average-page-views)を抜いて、3カラムデータフレーム。

library(ggplot2)
ggfluctuation(abc[,-4], type=”colour”)

color-heat-map-google-analytics-data

でも、ggfluctuationのヘルプを見ると、type=colourは traditionalの形だそうだ。

今は、大きさそのものを出す方が良いという認識?

ggfluctuation(abc[,-4])

size-heatmap-google-analytics-data

 

ただ、ggfluctuationは、拡張性?に乏しいような気がする。
geom_pointでcolor, sizeを指定して、4種類のデータ(時間帯、日付、訪問数、平均PV)を示す。

ggplot(abc, aes(hour, date, colour=apv, size=visits) + geom_point()

赤みが付くと、平均PVが高い。大きさは訪問数。
セッションの量と質と、時間帯+日付を示す。

今回は、セッションの質を、平均PVにしたけど、
ECサイトなら売上(セッション辺り)とか、CVRとかを使えば良い。直帰率でもいい。

size-color-heatmap-google-analytics-data

コメントを残す