複数のggplot2のオブジェクトを簡単にプロットできるパッケージの紹介です。プロット領域と体裁さえ決めてしまえば、定型的な繰り返しの出力に便利だと思います。
パッケージバージョンは0.0.0.9000。実行コマンドはR version 4.2.2で確認しています。
パッケージのインストール
下記、コマンドを実行してください。ggplot2パッケージの最新バージョンをインストールしています。
#パッケージのインストール install.packages("devtools") devtools::install_github("zaczap/bluepRint")
実行コマンド
詳細はコメント、パッケージのヘルプを確認してください。
#パッケージの読み込み library("bluepRint") ###データ例の作成##### n <- 30 TestData <- data.frame(Group = sample(paste0("Group", 1:5), n, replace = TRUE), Data1 = rnorm(n), Data2 = rnorm(n) + rnorm(n) + rnorm(n), Data3 = sample(0:1, n, replace = TRUE), Data4 = sample(LETTERS[1:26], n, replace = TRUE)) ####### ###ggplot2のオブジェクトを作成##### #箱ひげ図 BoxPlot <- qplot(data = TestData, x = Group, y = Data1, fill = Group, geom = "boxplot") #散布図 PointPlot <- qplot(data = TestData, x = Data2, y = Data1, color = Group, geom = "point") + ggtitle("TEST") #棒グラフ BarPlot <- qplot(data = TestData, x = Data4, fill = Data4, geom = "bar") + guides(fill = "none") #棒グラフをGroupで分割 FacetBarPlot <- qplot(data = TestData, x = Data4, fill = Data4, geom = "bar") + facet_wrap(~Group, nrow = 1) + guides(fill = "none") ######## #グラフを横並びに配置:blueprintコマンド #配置指定:layoutオプション;横方向"line",2*2"square", #左および右側に大きく側面に上下に二つプロット;"left_feature" #A,B,C,Dのグラフラベルを付与:labelオプション #横に2つプロット blueprint(layout = "line", BoxPlot, PointPlot, label = TRUE) #横に3つプロット blueprint(layout = "line", BoxPlot, PointPlot, BarPlot, label = TRUE) #2*2でプロット blueprint(layout = "square", BoxPlot, PointPlot, BarPlot, FacetBarPlot, label = TRUE) #左側に大きく右側に上下に二つプロット blueprint(layout = "left_feature", BoxPlot, PointPlot, BarPlot, label = TRUE)
出力例
・横に2つプロット
・横に3つプロット
・2*2でプロット
・左側に大きく右側に上下に二つプロット
少しでも、あなたの解析が楽になりますように!!