久々にアツイAPIが登場したの早速導入。
このブログでは毎日Apachのログを解析してページビューをデータベースに取り込んで溜めています。そこで、Google Chart APIを利用して、過去30日間の各記事のページビューをグラフ表示させてみました。
すべてのエントリーページの記事の終わりのほうにグラフを設置しています。
たとえば、「マフラーの巻き方をおさらいできる6サイト」のPVグラフはこんな感じ。
次のようなURLをプログラムで生成させています。
http://chart.apis.google.com/chart? chs=480x200 &cht=lc &chd=t:54.7,100,9.8,6.1,4.6,16.6,8,4.5,3.4,2.9,3.2,3.4,2.9,2.6,2.8,2.2,2.9,2.4,4,3.6,3.2,3.3,3.2,3,3.3,3.7,3.2,3.7,3.7,3.6 &chxt=x,y &chxl=0:|11/07|11/10|11/13|11/16|11/19|11/22|11/25|11/28|12/01|12/04 &chxr=1,0,24798 &chg=3,10,1,4 &chls=3,1,0 &chtt=Page+View+of+http://blog.fkoji.com/2007/11052207.html &chco=0000ff
以下、上記のパラメータについて解説。
chs: グラフのサイズ(幅x高さ) cht: グラフの種類。lcは折れ線グラフ。 chd: グラフのデータ。Text Encodingの場合は0から100までの値しか取れないので、正規化する必要がある。 chxt: ラベルを表示させたい軸 chxl: 軸のラベル。すべてを羅列する場合。 chxr: 軸のラベル。範囲指定する場合。 chg: 背景グリッド。x軸のグリッド間隔, y軸のグリッド間隔, 破線の長さ, 破線の間隔 chls: 折れ線のスタイル。太さ, 破線の長さ, 破線の間隔 chtt: グラフのタイトル chco: 折れ線の色
「mixiで芸能人を見つける6つの方法」の場合はこんな感じのグラフになっています。
ここでは正規化するときに必ず最大値で割り算しているのでY軸のMAX値が中途半端な数値になってしまっていますが、うまくキリのいい数値で正規化してあげればY軸のラベルもきれいにできるのかなと思います。
いやぁ、便利すぎる。