「ggplot2」パッケージだけで2軸グラフを作成するコマンド例です。「scale_y_continuous」コマンドと「sec.axis」コマンドを利用しています。
「tidyverse」パッケージバージョンは1.3.2。windows11のR version 4.2.2で確認しています。
パッケージのインストール
下記コマンドを実行してください。
#パッケージのインストール install.packages("tidyverse")
実行コマンドの紹介
詳細はコマンド、パッケージのヘルプを確認してください。
#ggplot2を含むtidyverseパッケージの読み込み library("tidyverse") ###データ例の作成##### set.seed(1234) n <- 50 TestData <- tibble(Group = sample(paste0("Group ", 1:5), n, replace = TRUE), Data = 1:n, Data1 = 1:n, Data2 = rnorm(n)) ######## #第2軸調整変数 SecondScale <- max(TestData$Data1)/max(TestData$Data2) ggplot(TestData, aes(x = Data)) + #Data1が第1軸 stat_summary(aes(y = Data1, fill = Group), fun = "mean", geom = "bar", position = "stack") + #Data2が第2軸 geom_line(aes(y = Data2*SecondScale), col = "blue", size = 4) + #2軸の調整 scale_y_continuous(name = "Data1 = sample(0:26, n, replace = TRUE)", sec.axis = sec_axis(trans = ~./SecondScale, breaks = seq(-10, 10, by = 1), name = "Data2 = rnorm(n)")) + #テーマで軸を調整 theme( #第2軸回り axis.title.y.right = element_text(color = "red", #色の指定 angle = -90) #90で第1軸と同じ向き )
出力例
少しでも、あなたの解析が楽になりますように!!