[英]plotting median of the points in R ggplot
我在繪制以下內容的中位數時有一個問題(我是R語言的新手,已經花費了幾個小時來查找代碼)。 我希望有一個人可以幫助我!
TYPE(time) DV
0 1
1 2
2 4
5 6
7 7
0 1
1 2
2 3
5 6
7 7
1 2
2 4
5 6
7 7
0 1
1 2
2 5
5 7
7 8
0 1
1 1
2 4
5 6
7 7
0 1
1 2
2 3
5 6
7 7
我希望使用GGplot2繪制中位數和通過y軸中位數的線(在本例中為DV)。 我只是為第一點構建了代碼,並希望增加中間值。 謝謝!!!
library(ggplus)
gg1 <- ggplot(dataplot) +
geom_point(aes(x=TYPE, y=DV)))
您可以先計算每種類型的DV
的中值,然后使用geom_segment
在圖中繪制線:
library(dplyr)
library(ggplot)
df1 <- df %>% group_by(TYPE) %>% mutate(med = median(DV))
gg1 <- ggplot(df1) +
geom_point(aes(x=TYPE, y=DV)) +
geom_segment(aes(x = TYPE-0.5, xend = TYPE+0.5, y = med, yend = med))
附帶說明一下,通常,當需要分位數的變量分布時,通常會使用geom_boxplot()
,您可以使用該方法執行以下操作:
ggplot(df, aes(x = TYPE, y = DV, group = TYPE)) + geom_point() + geom_boxplot()
中位數的位置與我們上面手動繪制的位置相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.