読者です 読者をやめる 読者になる 読者になる

トレジャーデータ(Treasure Data)公式ブログ

トレジャーデータ(Treasure Data)公式ブログです。

アクセスログ分析最前線:Treasure Data JavaScript SDK で始めるパス分析 その3

アクセスログ パス分析 Web 分析手法シリーズ

はじめに

トレジャーデータが提供する Treasure Data JavaScript SDK は,他のアクセスログ収集ツールと同様に,HTML 内にタグを埋め込む事でアクセスに関する情報を収集することが可能です。

docs.treasuredata.com

本記事のイントロダクションはその1をご参照下さい。

分析フロー

f:id:doryokujin:20160616142359j:plain

今回は 分析フローでいうところの7と8のNYSOL, Graphviz パッケージを紹介し,9の可視化までに必要なコマンド群を解説します。

フローの1から6は以下をご覧ください。 

7. NYSOLパッケージをインストール 

NYSOL

http://www.nysol.jp/

f:id:doryokujin:20160616150814p:plain

NYSOL は,UNIX(Mac)環境で動作するデータ分析コマンドラインツールです。NYSOL は分析のテーマごとに「松」や「竹」など,パッケージが分かれていますが,そのどれもがもれなく非常に有用なパッケージです。今回は NYSOL 内の「眺(view)」パッケージのコマンドを使用しますが,機会があれば他のパッケージでの分析事例も紹介したいと思っています。

眺(view)パッケージ

VIEW: mgv.rb Graphviz用グラフデータ(.dot)の作成

view パッケージの中に,「mgv」という,csv ファイルを Graphviz 用(後述)のための dot ファイルに変換するコマンドがあります。

f:id:doryokujin:20160616151525p:plain

この 1 行の mgb コマンドを実行することで,簡単に csv → dot ファイル変換ができます。

遷移ダイアグラム

遷移回数は,前回のコンバージョンパステーブルを用いなくても Raw Data テーブルより生成が可能な指標で比較的簡単にダイアグラムを作ることができます。 

遷移回数を求めるクエリ:

このクエリの中の「ORDER BY cnt DESC LIMIT 50」 の部分は重要で,遷移回数上位50件のみを取得しています。遷移回数やコンバージョン回数・率でダイアグラムを用いる際にはソート順に上位 50〜100 レコードの csv ファイルを用います。試してみれば明白ですが,これ以上のレコード数に対してダイアグラムを作成すると,とても複雑なダイアグラムができあがってしまいます。

このクエリによって取得したファイルを transition.csv とすると,以下の mgv コマンドで dot ファイルに変換します:

f:id:doryokujin:20160616153617p:plain

↑ transition.csv の内容,これが dot ファイルに変換されたものが以下になります(一部省略しています)。

8. Graphvizをインストール

Graphviz

http://www.graphviz.org/

f:id:doryokujin:20160616154621p:plain

Graphviz は dot 言語をインプットとして,ダイアグラムを生成する可視化ツールです。NYSOL と同様に UNIX(Mac)環境でインストール可能なコマンドラインツールです。

9. ダイアグラム作成

遷移ダイアグラム(続)

先ほど生成した遷移回数の dot ファイルと Graphviz に読み込みましょう。

f:id:doryokujin:20160616155528p:plain

このコマンドによってついに遷移ダイアグラムが生成されました。

さて,この遷移ダイアグラムですがいくつかの工夫の余地があります:

  1. td_title (ノードラベル)が長いノードは横に広い楕円になってしまう
  2. 全体的に横長のダイアグラムになりやすい

1. については,dot 言語内で各ノードラベルの適切な箇所に改行文字: \n を挿入することで,ダイアグラムの中でもノードラベルが改行され,見やすくなります。

2. については rankdir=LR;  というレコードを挿入することで,グラフを矢印の向きを横向きから縦向きに変換します。

実際に上2つの工夫を施した dot ファイル(さらに )を用いて再度ダイアグラムを生成してみます。

改良済み dot ファイル

f:id:doryokujin:20160616160615p:plain

コンバージョンダイアグラム(遷移回数)

前回でこのダイアグラムのためのクエリを紹介しましたが,遷移回数上位50件を抽出する形のクエリを再掲載します:

クエリテンプレート

dot ファイル

f:id:doryokujin:20160616162354p:plain

ここでコンバージョンノードの形を菱形に,色を赤色に変えて目立つようにします。また,適切に改行しました。

改良済み dot ファイル

f:id:doryokujin:20160616162643p:plain

コンバージョン率ダイアグラム

こちらの方はコンバージョン率上位50件の遷移を取得します。

クエリテンプレート

dot ファイル

f:id:doryokujin:20160616163355p:plain

改良済み dot ファイル

f:id:doryokujin:20160616163827p:plain

こちらの方は dot ファイルを改良することでだいぶ視認性の良いものになりましたね。

 

以上、Treasure Data JavaScript SDKで始めるパス分析シリーズでした。