R | ggplot | geom_lineで折れ線グラフを描きたい
install.packages("tidyverse")
library(ggplot2)
df <- data.frame(
subject = c("x1", "x2", "x3", "x4", "x5","x6"),
weight = c(45, 53, 56, 72, 65, 50),
height = c(160, 170, 180, 175, 165, 160))
head(df, 2)
g <- ggplot(df, aes(x = weight, y = height))+
geom_line()
plot(g)
コードの説明
#パッケージのインストール
最初にパッケージをRにインストールしましょう。gglpot2はtidyverseというパッケージに内包されているので,tidyverseをインストールし,ggplot2をライブラリーします。
install.packages("tidyverse")
library(ggplot2)
#データフレームの作成
ggplotで棒グラフを作成するために被験者6人の体重を表しているデータフレームを作成します。subjectは「被験者」を,weightは「体重」を表しています。
df <- data.frame(
subject = c("x1", "x2", "x3", "x4", "x5","x6"),
weight = c(45, 53, 56, 72, 65, 50),
height = c(160, 170, 180, 175, 165, 160))
head(df, 2)
#折れ線グラフの描画
ggplotで体重をX軸に,身長をY軸にマッピングし,散布図を作成します。まずggplotのなかに使用するデータフレーム,データセットの中の変数をX軸やY軸に割り当てます。今回は体重と身長の値をそのまま表示させたいので,geom_line()の中身をstat = "idenetity"にしました(1)。
g <- ggplot(df, aes(x = weight, y = height))+
geom_line(stat = "identity")
plot(g)
#geom_line ()でも描画できる
もしgeom_pointの統計処理の部分を指定せずに図を描画しようとした場合はgeom_point内の初期設定の値が"idenittyなので問題なく描画できます。
g <- ggplot(df, aes(x = subject, y = weight))+
geom_bar()
plot(g)
(1)geom_bar()は,デフォルトで統計的な処理がstat = "count"担っているので,指定しなければX軸の水準に該当するデータの個数をY軸に表示します。
■Rグラフィックスクックブック第2版 ―ggplot2によるグラフ作成のレシピ集/Winston Chang (著), 石井弓美子 (翻訳), 河内崇 (翻訳), 瀬戸山雅人 (翻訳)
■改訂2版 RユーザのためのRStudio[実践]入門〜tidyverseによるモダンな分析フローの世界/松村優哉 (著), 湯谷啓明 (著), 紀ノ定保礼 (著), 前田和寛 (著)
■Rが生産性を高める〜データ分析ワークフロー効率化の実践/igjit (著), atusy (著), hanaori (著)
この記事が気に入ったらサポートをしてみませんか?