人文系研究資料・データの構築・公開ツールと国文学資料事例 ... · 2015-08-04 · 人文系研究資料・データの構築・公開ツールと国文学資料事例の紹介
この Visualization がすごい2014 〜データ世界を彩るツール6選〜
-
Upload
takahiro-inoue -
Category
Technology
-
view
18.243 -
download
6
description
Transcript of この Visualization がすごい2014 〜データ世界を彩るツール6選〜
1
March 2nd, 2014 データ可視化勉強会
Presented by
Takahiro Inoue – Chief Data Scien:st
「この Visualiza)on ツールがすごい2014」 〜データ世界を彩る美しきツール6選〜
2
Presented by
Takahiro Inoue – Chief Data Scien:st
1. Introduc:on 2. Learning Visualiza:on 3. 表計算部門:aabel3 4. Dashboard 部門:Metric Insights 5. BI 部門:tableau 6. 統計ソフト部門:ggplot2 7. 抽象化部門:Neo4j(Graph Database) 8. プログラミング部門:d3.js(省略)
Agenda
3
1. Introduc)on
4
Presented by
Takahiro Inoue – Chief Data Scien:st
• Takahiro Inoue (TwiPer: @doryokujin )
• Majored in Mathema:cs in Keio University
• Chief Data Scien:st and Solu:on Architect @ Treasure-‐Data
• Leader of Japanese MongoDB Community, Mongo Masters
• doryokujin’s blog hPp://doryokujin.hatenablog.jp/
Introduc)on
5
Presented by
Takahiro Inoue – Chief Data Scien:st
Company & Product Over View
Treasure Data Introduc)on
Web logs
App logs
Sensor
CRM
ERP
RDBMS
Data Collection Data Analysis
Streaming Log !Collector (JSON)!
Treasure Agent
Parallel Upload from CSV, MySQL, etc.!
Bulk Import
REST API, SQL, Pig, JDBC / ODBC!
BI Connectivity
REST API, SQL, Pig!
Result Push
Data Storage
Treasure Batch Query &
Treasure Query Accelerator
Time to Value Economy & Flexibility Simple & Supported
No Command Line,!Every Operation is Here! !
Management Console New!!
New!!
BI Tools
Dashboards Custom App, Local DB,
FTP Server, etc.
Cloud DB, Web App, & Command Line Flexible, Scalable, Columnar Storage!
Tableau, Metric Insights, Dr.Sum, Excel, etc.
Treasure Viewer New!!
Value Proposi)on 1 Value Proposi)on 2 Value Proposi)on 3
6
M x N 通りのデータ収集・活用方法
7
Fluentd: M + N 通りに経路を集約して簡素化
Nagios
MongoDB
Hadoop
Alerting
Amazon S3
Analysis
Archiving
MySQL
Apache
Frontend
Access logs
syslogd
App logs
System logs
Backend
Databasesfilter / buffer / routing
8
Data Analysis
Scripted Processing (Pig): -‐ DataFu (LinkedIn) -‐ Piggybank (Apache)
Heavy LiKing SQL (Hive): -‐ Hive’s Built-‐in UDFs -‐ TD Added Func:ons: -‐ Time Func:ons -‐ First, Last, Rank -‐ Sessionize
JDBC Connec)vity: -‐ Custom Java Apps -‐ Standards-‐based -‐ BI Tool Integra:on
Tableau ODBC connector -‐ Leverages Impala
Push Query Results: -‐ MySQL, PostgreSQL -‐ Google Spreadsheet -‐ Web, FTP, S3 -‐ Lecronic, Indicee -‐ Treasure Data Table
Interac)ve SQL Treasure Query Accelerator (Impala)
Scheduled Jobs -‐ SQL, Pig Scripts -‐ Data Pushes REST API
9
2. Learning Visualiza)on
10
Visualiza)on Types(入力データに基づく分類)
Raw Data
Aggregated Data
Cross Tables
Analyzed Data
ScaUer Plot
Map Plot
Math Graph
2-‐Dimensional Graph
N-‐Dimensional Graph
Sta)s)cal Graph
ScaUer Plot(散布図) (for Rawdata)
データレコードの任意の数値変数2項目をプロットし,関係を発見する。
Map Plot (for Rawdata)
位置情報(緯度,経度)を持つデータポイントを地図上にマッピングし,データの密集度などを参考にする。
Math Graph (for Rawdata)
データの「関係」を数学的グラフによって表現。
11
Raw Data Explana)on
2-‐Dimensional Graph (for aggregated data)
主に X-‐軸,Y-‐軸 (,Y2-‐軸)を用いて表現される,バーグラフや円グラフなどの平面チャート。
N-‐Dimensional Graph (for cross tables)
X-‐軸,Y-‐軸,Z-‐軸 を用いて表現されるグラフ。Z-‐軸は半径や色,奥行き,凡例などによって表現される。
Sta)s)cal Graph (for analyzed data)
統計分析によって導いた分布やモデル,パターンなどを図示する。
12
Processed Data Explana)on
表計算
統計ソフト
Dashboard
BI
プログラミングライブラリ
抽象化
13
Graphの種類とツールの対応表
Map Plot
Map Plot
ScaUer Plot
ScaUer Plot
ScaUer Plot
Math Graph
2-‐Dimensional Graph
2-‐Dimensional Graph
2-‐Dimensional Graph
2-‐Dimensional Graph
Sta)s)cal Graph
Sta)s)cal Graph
N-‐Dimensional Graph
N-‐Dimensional Graph
N-‐Dimensional Graph
N-‐Dimensional Graph 2-‐Dimensional Graph ScaUer Plot
部門 ツール名 OS 描画手続き
表計算 aabel3 Mac Chart Library
統計ソフト ggplot2 (R Library) Windows, Mac, Linux The Grammar of Graphics + Layer of Graphics
Dashboard Metric Insights Web UI Widget Tutorial / Chart Library & Import JS
BI Tableau Windows VizQL
プログラミングライブラリ
D3.js (JavaScript) -‐ Data Driven Documents
抽象化 Neo4j (Java: Graph Database)
-‐ Property Graph
14
Processed Data Explana)on
15
3. 表計算部門 • aabel3
16
表計算部門:aabel3
• 数々の統計手法、探究的データ解析手法を提供。
• 複数の多変量データを容易にデータ整理可能。
• リアルタイムの双方向インタラクティブデータ作用
を可能にし、多変量データ解析を容易にするユ
ニークなパイプラインデザインを装備。
• インタラクティブな可視化機能、数多くのグラフタイ
プ、240 以上のデータプレゼンテーションスタイル
を用意。
• 数値データ管理ツール、フォーミュラエディタなど
のユーティリティを装備したネイティブワークシート。
• さまざまなデータインポート、グラフィックファイル
エクスポート、データマニピュレータ、フレキシブル
なカスタマイズツール、Unicode 対応、出版品質の
グラフィックなど研究、調査に必要なツールを装備。
17
描画手続き:Chart Library
18
描画手続き:Chart Library
• 多様性:あらゆるVisualiza:on・統計メソッドを装備。
• 容易性:チュートリアルに従ってあらゆる図が描ける。
• ワークシート:エクセルと同じようにワークシートによるデータ編集,抽出が可能。
19
応用事例:Map Plot
20
応用事例:回帰分析 / 生存時間分析
21
4. Dashboard 部門 • Metric Insights
22
Dashboard部門:Metric Insights
23
• 毎日更新される KPI を素早く参照可能。
• 異常検出機能,およびアラート機能。
チャートへのアノテーション機能。
• Smart Phone や Tablet からも綺麗に描
画できる。
• D3.js, Google Chart, Higcharts などのJSライブ
ラリをインポート可能→インタラクティブな図
• (任意の時間インターバルでの)データ自動
更新機能。
• 素早く編集可能な互いに独立したパネル
(ウィジェット)を持っている。
• 様々なデータベース・ファイル形式と接続でき
るコネクタを装備。
Dashboard部門:Metric Insights
24
描画手続き:Widget Tutorial
1. 集計インターバルを設定
2. メジャーの種類を設定
3. カテゴリを設定
25
4. Plug-inを選択
5. 接続するデータソースを指定
6. クエリを記述
7. Sample Result を確認
描画手続き:Widget Tutorial
26
応用事例:Import JS Library
27
応用事例:レポーティング
28
応用事例:Dynamic Pivot Table
29
5. BI(Business Intelligence) 部門 • Tableau
30
BI部門:Tableau
31
BI部門:tableau
32
Dashboard (MI) と BI (Tableau) の違い
Dashboard ( Metric Insights ) BI ( Tableau )
目的
• 毎日更新されるデータ (KPI) を素早く参照する
ため
• 解析者に関わらず全てのユーザーが参照する
ため
• 異常値やイベントなどの効果を素早く把握する
ため
• Smart Phone や Tablet からも参照するため
• 様々の切り口・セグメントの組合せでデータを閲覧す
るため
• インタラクティブな操作でドリルダウンや軸の切り替
えを行うため
• 様々なチャートとテーブルを組合せた情報表現を行
うため
• プレゼンに耐えうるクオリティの高いレポートを作成
するため
要請
• 異常検出機能,およびアラート機能を備えてい
ること
• チャートへのアノテーション機能を備えているこ
と
• チャートの一覧性・わかりやすさを重視してい
ること
• (任意の時間インターバルでの)データ自動更
新機能を持っていること
• 素早く編集可能な互いに独立したパネル(ウィ
ジェット)を持っていること
• 様々なデータベース・ファイル形式と接続でき
るコネクタを備えていること
• インタラクティブな操作が可能なこと
• 豊富なチャートライブラリ,ダッシュボードエディタの
実装していること
• 適化された中間データ構造(Data Cubeなど)を備
えていること
• マウス操作によってデータの深堀りや切り口の切り
替えが可能なこと
• JDBC / ODBC コネクタを初めとした様々なデータソー
スとの接続口を持つこと
33
描画手続き:VizQL
hPp://tableau.globalpreneurs.jp/faq/
34
描画手続き:Dimension & Measure
35
描画手続き:Dimension & Measure
36
Video Tutorial
hPp://youtu.be/vh9v76e95GY
37
応用事例
38
応用事例
39
6. 統計ソフト部門 • ggplot2
40
統計ソフト部門:ggplot2
• ggplot2はRのパッケージ。
• “The Grammar of Graphics”:文法に基づいた柔軟
な描画が可能。
• ありあわせのChart Libraryから選択するのではな
く,文法に基づいて現状の問題にあった描画が可
能。
• The Grammar of Graphicsをさらに拡張し,「レイ
ヤー」という概念を導入。
• 豊富な書籍,ドキュメント
41
描画手続き:The Grammar of Graphics
要素 名前 説明 例
data データ ビジュアル化したい対象。
geom 幾何学的オ
ブジェクト プロット上のタイプを決める。 { point, bar, boxplot, line }
stat 統計的変換 データをようやくする様々な方法。オプ
ション。 { density, boxplot, smooth, histogram }
scale スケール データを「位置」と「カラー」にマッピング
する。 { x=0.037, y=0.531, colour=#FF6C91 }
coord 座標系 オブジェクトの位置を指定された座標
系の上にプロット平面にマッピング。 { Cartesian, Map, Polar }
facet ファセット トリレス・プロットの一般化。データ全体
から異なる部分集合を抽出する。
42
描画手続き:Layer of Graphics
• レイヤー文法は次の成分の組み合わせから成る: { data, mapping, geom, stat, posi:on }
• プロットにレイヤーを重ねるには “+” を使う。
図の参照先
一般のグラフィクスライブラリでの作図例。1つの層にあらゆる成分を置く。
Ggplot2ではそれぞれの層に成分を置いていく。
43
描画手続き:Layer of Graphics
# ggplot2に入っている乗用車の燃費データ $ ?mpg $ summary(mpg) $ p <-‐ ggplot(mpg, aes(displ, hwy)) # geom 成分を与えることで始めて描画される $ p + geom_point() # geom 成分として line を重ねる。散布図と折れ線の描画 $ ggplot(mpg, aes(displ, hwy))+ geom_point()+ geom_line() # cyl ( = シリンダ数) をfactorにした色分けを行う $ ggplot(mpg, aes(displ, hwy))+ geom_point()+ geom_line(aes(color = factor(cyl)))
44
描画手続き:Layer of Graphics
#ファセットの追加,2×2の sccater matrix $ ggplot(data = gender.comp, aes(Male, Female))+ geom_abline(colour = "grey80")+ geom_point(alpha = 0.6)+ facet_wrap(~Measure, scales = "free")
45
7. 抽象化部門 • Neo4j (Graph Database)
46
hPp://www.slideshare.net/doryokujin/graphdbgraphdb
47
Discussion & Q and A