在這里,我提供了一個我嘗試過的示例:
df <- data.frame(a = rep(c(1:12), each = 2),
b = c("yes", "no"),
c = sample(x = 1:200, size = 24))
ggplot(df, aes(x = a, y = c))
geom_col(aes(fill = b), position = 'dodge')
scale_x_continuous(breaks = min(a):max(a))
geom_line(aes(x = a, y = c, group = b), stat = "identity")
所以基本上我想要獲得的是每個 xtick 的兩個條,每個條集的一條線通過每個匹配條的頂部中心。我希望這兩條線的顏色與它們匹配的條形集相對應。
我在這里看到了一個關于 C 語言的問題。它與這個問題有一些相似之處,但沒有太大幫助。
如果有人知道如何實作這一點,我將不勝感激:)
uj5u.com熱心網友回復:
關鍵是同時position = position_dodge()設定geom_col和geom_line。
如果將線條顏色設定為與條形相同的顏色,則很難將線條可視化。在這里,我手動將“no”設定為“black”,將“yes”設定為“firebrick” scale_color_manual。洗掉代碼scale_color_manual(values = c("no" = "black", "yes" = "firebrick"), name = "line")以將顏色與條對齊。
library(ggplot2)
df <- data.frame(a = rep(c(1:12), each = 2),
b = c("yes", "no"),
c = sample(x = 1:200, size = 24))
ggplot(df, aes(x = a, y = c, group = b, fill = b))
geom_col(position = position_dodge(width = 1))
geom_line(aes(col = b), position = position_dodge(width = 1))
scale_color_manual(values = c("no" = "black", "yes" = "firebrick"), name = "line")

由reprex 包于 2022-05-05 創建(v2.0.1)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/471600.html
