ggplot2による 
データ可視化 
里 洋平 (@yokkuns) 
第42回Tokyo.R 初心者セッション 
2014.08.30
AGENDA 
n 自己紹介 
n ggplot2によるデータの可視化 
n ggplot2とは 
n 棒グラフ 
n 折れ線グラフ 
n 散布図 
n ヒストグラム 
n 箱ひげ図
AGENDA 
n 自己紹介 
n ggplot2によるデータの可視化 
n ggplot2とは 
n 棒グラフ 
n 折れ線グラフ 
n 散布図 
n ヒストグラム 
n 箱ひげ図
自己紹介 
里 洋平 (@yokkuns) 
Ø やってきたこと 
Ø Webアプリ開発 
Ø 統計解析/データマイニング 
Ø マーケティング 
 
Ø 今やってること 
Ø 全社横断の分析 
Ø 分析環境の整備
活動例1:やってきたこと
活動例2:TokyoR 
Tokyo.Rの主催やってます
活動例3:執筆
AGENDA 
n 自己紹介 
n ggplot2によるデータの可視化 
n ggplot2とは 
n 棒グラフ 
n 折れ線グラフ 
n 散布図 
n ヒストグラム 
n 箱ひげ図
ggplot2パッケージとは 
統一されたインタフェースとオプションで 
簡単にきれいでパワフルなグラフが作成出来るパッケージ
ggplot2によるグラフ作成のイメージ
ggplot2によるグラフ作成の流れ
本資料で使用するデータ 
仮想の売上データ 
Ø 商品1の月次売上データ 
Ø 商品1,2の月次売上データ 
Ø 店舗1〜3の商品3,4の日次売上データ
データの作成 ①:商品1の月次売上データ
データの作成 ②:商品1,2の月次売上データ 
メッセージライン
データの作成 ③:店舗1〜3の商品3,4の日次売上データ 
メッセージライン
AGENDA 
n 自己紹介 
n ggplot2によるデータの可視化 
n ggplot2とは 
n 棒グラフ 
n 折れ線グラフ 
n 散布図 
n ヒストグラム 
n 箱ひげ図
基本的な棒グラフ
背景色の変更 
背景色を白にしたい
背景色の変更(Rコード) 
theme_bw関数を使う
背景色の変更(結果)
軸ラベル・タイトルの変更 
軸ラベルやタイトルを日本語にしたい
軸ラベル・タイトルの変更(Rコード) 
xlab、ylab、ggtitle関数を使う
軸ラベル・タイトルの変更(結果)
数字フォーマットの変更 
y軸の数字をカンマ区切りにしたい
数字フォーマットの変更(Rコード) 
scalesパッケージのcomma関数を使う
数字フォーマットの変更(結果)
テキストの追加 
棒グラフの上に数字を載せたい
テキストの追加(Rコード) 
geom_text関数を使う
テキストの追加(結果)
追加的ストの加工 
テキスト(数字)をカンマ区切りにしたい
追加的ストの加工(Rコード) 
scalesパッケージのcomma関数を使う
追加的ストの加工(結果)
積み上げ棒グラフの作成 
積み上げ棒グラフを作りたい
積み上げ棒グラフの作成(Rコード) 
fillオプションにグループとなる変数を指定する
積み上げ棒グラフの作成(結果)
色セットの変更 
棒の色セットを変更したい
色セットの変更(パレットの確認) 
RColorBrewerパッケージ
色セットの変更(パレットの確認) 
display.brewer.all関数でパレットを確認
色セットの変更(Rコード) 
scale_fill_brewer関数を使う
色セットの変更(結果)
棒に枠をつける 
棒に枠をつけたい
棒に枠をつける(Rコード) 
colオプションに枠色を指定する
棒に枠をつける(結果)
100%積み上げ棒グラフの作成 
100%積み上げ棒グラフを作りたい
100%積み上げ棒グラフ (Rコード) 
positionオプションにfillを指定する
100%積み上げ棒グラフ (結果)
棒を水平に並べる 
棒を水平に並べたい
棒を水平に並べる (Rコード) 
positioinオプションにdodgeを指定する
棒を水平に並べる (結果)
AGENDA 
n 自己紹介 
n ggplot2によるデータの可視化 
n ggplot2とは 
n 棒グラフ 
n 折れ線グラフ 
n 散布図 
n ヒストグラム 
n 箱ひげ図
折れ線グラフの作成 
折れ線グラフを作りたい
折れ線グラフの作成 (Rコード) 
geom_line関数を使う
折れ線グラフの作成 (結果)
y軸の範囲指定 
y軸の範囲を指定したい
y軸の範囲指定 (Rコード) 
scale_y_continuous関数の 
limitsオプションを使う
y軸の範囲指定 (結果)
点の追加 
折れ線グラフに点を追加したい
点の追加 (Rコード) 
geom_point関数を追加する
点の追加 (結果)
折れ線グラフのグループ化 
グループごとの折れ線グラフを作りたい
折れ線グラフのグループ化 (Rコード) 
groupとcolオプションに 
グループとなる変数を指定する
折れ線グラフのグループ化 (結果)
線の種類の変更 
グループごとに線の種類を変えたい
線の種類の変更 (Rコード) 
ltyオプションにグループとなる変数を指定
線の種類の変更 (結果)
AGENDA 
n 自己紹介 
n ggplot2によるデータの可視化 
n ggplot2とは 
n 棒グラフ 
n 折れ線グラフ 
n 散布図 
n ヒストグラム 
n 箱ひげ図
散布図の作成 
散布図を作りたい
散布図の作成 (Rコード) 
geom_point関数を使う
散布図の作成 (結果)
色と形の変更 
グループごとに色と形を変えたい
色と形の変更 (Rコード) 
colとshapeオプションに 
グループとなる変数を指定する
色と形の変更 (結果)
回帰直線の追加 
回帰直線を追加したい
回帰直線の追加 (Rコード) 
geom_smooth関数を使う
回帰直線の追加 (結果)
グループ別回帰直線 
グループごとに回帰直線を引きたい
グループ別回帰直線 (Rコード) 
グループ化してgeom_smooth関数を使う
グループ別回帰直線 (結果)
AGENDA 
n 自己紹介 
n ggplot2によるデータの可視化 
n ggplot2とは 
n 棒グラフ 
n 折れ線グラフ 
n 散布図 
n ヒストグラム 
n 箱ひげ図
ヒストグラムの作成 
ヒストグラムを作りたい
ヒストグラムの作成 (Rコード) 
geom_histogram関数を使う
ヒストグラムの作成 (結果)
色の変更 
棒を白抜きにしたい
色の変更 (Rコード) 
colオプションとfillオプションで 
線と棒の色を指定する
色の変更 (Rコード)
ビン幅の変更 
棒の幅を変更したい
ビン幅の変更 (Rコード) 
binwidthオプションを使う
ビン幅の変更 (結果)
AGENDA 
n 自己紹介 
n ggplot2によるデータの可視化 
n ggplot2とは 
n 棒グラフ 
n 折れ線グラフ 
n 散布図 
n ヒストグラム 
n 箱ひげ図
箱ひげ図の作成 
箱ひげ図を作りたい
箱ひげ図の作成 (Rコード) 
geom_boxplot関数を使う
箱ひげ図の作成 (結果)
AGENDA 
n 自己紹介 
n ggplot2によるデータの可視化 
n ggplot2とは 
n 棒グラフ 
n 折れ線グラフ 
n 散布図 
n ヒストグラム 
n 箱ひげ図
参考 
■書籍 
・戦略的データマイニング (シリーズ Useful R 4) 
- http://amzn.to/1otigKO 
 
第1章 序論 
 
第2章 データ加工 
第3章 データ可視化 
 
第4章 問題発見 
 
第5章 問題解決:意思決定支援 
第6章 問題解決:自動化・最適化 
 
第7章 効果測定 
付録A R/RStudioの導入 
 
■Rコードと実行結果 
・TokyoR#42 データの可視化(ggplot2) 
- http://rpubs.com/yokkuns/27108
Enjoy!

Tokyor42 ggplot2