這是一個關于ggplot的問題。背景關系是來自自舉重采樣的資料,用于與假設分布進行比較。在對自舉資料進行箱線圖繪制后,我想覆寫一條預期比例的線。下面的 ggplot 代碼產生:
錯誤:Aesthetics 必須為長度 1 或與資料 (20) 相同:y
boot1 <- data.table(digit = 1, prop = runif(10, 0.25, 0.35))
boot2 <- data.table(digit = 2, prop = runif(10, 0.12, 0.25))
boots <- rbindlist(list(boot1, boot2))
ggplot(boots, aes(x = as.factor(digit), y = prop))
geom_boxplot()
geom_line(aes(x = as.factor(digit), y = c(0.3, 0.17)))
在現實示例中,線圖的 y 值將使用非線性函式產生的值。
感謝您的關注。
uj5u.com熱心網友回復:
對于您的示例,您可以嘗試,geom_segment()因為您沒有連續的線,而是線段。因此,您的每個因素都將在 x 軸上編碼為 1,2,3,如果您有 3 個類別,那么您需要創建一個 digit = 1:3 的日期框架:
mean_data = data.frame(digit = 1:2,prop = c(0.3,0.17))
ggplot(boots, aes(x = factor(digit), y = prop))
geom_boxplot()
geom_segment(data = mean_data,
aes(x = digit - 0.3,xend = digit 0.3,y=prop,yend=prop),col="blue")

uj5u.com熱心網友回復:
作為分割方法的另一個旋轉,我嘗試了 geom_curve,其間隔等于我的 x 軸類別。
geom_curve(x = 1, y = 0.3, xend = 2, yend = 0.17, curvature = 0.1, color = 2)
結果是

它不優雅,尤其是多個類別。謝謝@StupidWolf 的幫助。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/368354.html
