(我試圖使這個問題盡可能簡短明了,因為其他相關的答案對于像我這樣不精明的人來說可能很難。)
考慮到以下代碼,是否可以讓兩個 y 軸處于相同的比例(具有最高 y 限制的圖形的比例),并且每個軸(即 y 軸)都有獨立的標簽? 我嘗試使用,facet_wrap但到目前為止還沒有成功Layer 1 is missing)
library(ggplot2)
library(patchwork)
d <- cars
d$Obs <- c(1:50)
f1 <- function(a) {
ggplot(data=d, aes_string(x="Obs", y=a))
geom_line()
labs(x="Observation",y="Speed/Distance")
}
f1("speed") f1("dist")

uj5u.com熱心網友回復:
您可以向函式添加兩個額外的引數,一個用于軸標簽,另一個用于所需的限制。
library(ggplot2)
library(patchwork)
d <- cars
d$Obs <- c(1:50)
f1 <- function(a, y_lab) {
ggplot(data = d, aes_string(x = "Obs", y = a))
geom_line()
scale_y_continuous(limits = range(c(d$speed, d$dist)))
labs(x = "Observation", y = y_lab)
}
f1("speed", "Speed") f1("dist", "Distance")

uj5u.com熱心網友回復:
重塑寬到長,然后使用刻面。我們將使用刻面標簽,而不是使用不同的 y 軸標簽:
library(ggplot2)
library(tidyr)
pivot_longer(d, 1:2, names_to = "grp") %>%
ggplot(aes(x = Obs, y = value))
geom_line()
facet_wrap(vars(grp))

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/384674.html
