Rで解析:ggplot2を水平方向にプロット「ggstance」パッケージ

Rの解析に役に立つ記事

ggplot2を水平方向にプロットするパッケージの紹介です。簡単に利用できるのでオススメです。対象となるプロットは箱ひげ図、バイオリンプロット、棒グラフ、ラインレンジプロット、ポイントレンジプロット、クロスバープロットです。

パッケージバージョンは0.3.6.9000。実行コマンドはR version 4.2.2で確認しています。

スポンサーリンク
スポンサーリンク

パッケージのインストール

下記、コマンドを実行してください。

#パッケージのインストール
install.packages("devtools")
devtools::install_github("lionel-/ggstance")

実行コマンド

詳細はコメント、パッケージのヘルプを確認してください。

#パッケージの読み込み
library("ggstance")

#ggplot2を利用するためにtidyverseパッケージ
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
  install.packages("tidyverse");require("tidyverse")
}

###データ例の作成#####
n <- 3000
#geom_boxploth,geom_violinhに適応
TestData <- data.frame(Group = sample(paste0("Group", 1:5), n, replace = TRUE),
                       Data1 = runif(n),
                       Data2 = runif(n) + runif(n))
#geom_barh,geom_linerangeh,geom_pointrangeh,geom_crossbarhに適応
TestData2 <- aggregate(TestData[, 2:3], by = list(TestData[, 1]), mean)
#######

#ggplot2のテーマをセット
theme_set(theme_linedraw())

#横向きのbox plot:geom_boxplothコマンド
ggplot(TestData, aes(x = Data1, y = Group)) +
  geom_boxploth(aes(fill = factor(Group)))

#横向きのviolin plot:geom_violinhコマンド
ggplot(TestData, aes(x = Data1, y = Group)) +
  geom_violinh(aes(fill = factor(Group)))

#横向きのbar plot:geom_barhコマンド
ggplot(TestData2, aes(x = Data1, y = Group.1)) +
  geom_barh(aes(fill = factor(Group.1)), stat = "identity")

#横向きのlinerange plot:geom_linerangehコマンド
ggplot(TestData2, aes(x = Data1, y = Group.1)) +
  geom_linerangeh(aes(xmin = Data1, xmax = Data1 * 0.1, color = Group.1))

#横向きのpointrange plot:geom_pointrangehコマンド
ggplot(TestData2, aes(x = Data1 + 0.1, y = Group.1)) +
  geom_pointrangeh(aes(xmin = Data1, xmax = Data1 + 0.3, color = Group.1))

#横向きのcrossbar plot:geom_crossbarhコマンド
ggplot(TestData2, aes(x = Data1 + 0.1, y = Group.1)) +
  geom_crossbarh(aes(xmin = Data1, xmax = Data1 + 0.3, color = Group.1))

出力例

・geom_boxplothコマンド

geom_boxploth

・geom_violinhコマンド

geom_violinh

・geom_barhコマンド

geom_barh

・geom_linerangehコマンド

geom_linerangeh

・geom_pointrangehコマンド

geom_pointrangeh

・geom_crossbarhコマンド

geom_crossbarh

少しでも、あなたの解析が楽になりますように!!

タイトルとURLをコピーしました