在這段代碼中,我想將 y 軸限制在 15 - 30 之間,但我在這樣做時遇到了麻煩。到目前為止,這是我的代碼。
a <- c(15.8, 18.1)
b <- c(20.2, 26.1)
c <- c(24.2, 30)
z <- c(24.5, 35)
Coldwater <- cbind(z, a) %>% data.frame("min"= min(Coldwater$a), "max"=max(Coldwater$a))
Coolwater <- cbind(z, b) %>% data.frame("min"= min(Coolwater$b), "max"=max(Coolwater$b))
Warmwater <- cbind(z, c) %>% data.frame("min"= min(Warmwater$c), "max"=max(Warmwater$c))
plot <- ggplot() geom_area(data = Warmwater, aes(z, c, fill = "Warmwater")) geom_area(data = Coolwater, aes(z, b, fill = "Coolwater")) geom_area(data = Coldwater, aes(z, a, fill = "Coldwater")) xlab("Maximum Air Temperature (°C)") ylab("Water Temperature at 1600 hours (°C)")
plot
與 geom_area 一樣繪制
我設法得到了情節。我現在唯一想要的就是限制它。但是,我收到此訊息
警告訊息:1:在 max(ids, na.rm = TRUE) 中:max 沒有非缺失引數;回傳 -Inf 2:在 max(ids, na.rm = TRUE) 中:max 沒有非缺失引數;回傳 -Inf 3:在 max(ids, na.rm = TRUE) 中:max 沒有非缺失引數;回傳-Inf
我嘗試過 ylim 和 scale_y_continuous 等都沒有幫助。
我在互聯網上查找了我的問題,但沒有一個非常簡潔的答案,而且我的 R 技能水平也不是最高的,所以很遺憾,我找不到答案。
uj5u.com熱心網友回復:
也許這就是你要找的?您可以使用 eg 設定限制coord_cartesian,這將簡單地“縮放”您要顯示的資料范圍:
library(ggplot2)
ggplot()
geom_area(data = Warmwater, aes(z, c, fill = "Warmwater"))
geom_area(data = Coolwater, aes(z, b, fill = "Coolwater"))
geom_area(data = Coldwater, aes(z, a, fill = "Coldwater"))
xlab("Maximum Air Temperature (°C)")
ylab("Water Temperature at 1600 hours (°C)")
coord_cartesian(ylim = c(15, 30), expand = FALSE)

資料
a <- c(15.8, 18.1)
b <- c(20.2, 26.1)
c <- c(24.2, 30)
z <- c(24.5, 35)
Coldwater <- data.frame(z, a)
Coolwater <- data.frame(z, b)
Warmwater <- data.frame(z, c)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/468219.html
