[英]ggplot2 boxplot aligned plotting one graph
我正在努力從數據框中繪制箱線圖。 我有一個包含3列的數據框df: df$A
, df$B
, df$C
我想在x軸上具有df$C
,並在一張圖中將df$A
和df$B
繪制為Y軸上的箱線圖。 因此,對於x軸的每個值,它應該是兩個值df$A
和df$B
我想讓每個X軸的值( df$C
)的框對齊。 我試圖使用交互來組合列中的( A
, B
),然后像這樣繪制它:
df$AandB <- interaction(df$A, df$fB)
ggplot(aes(y = AandB, x = df$C), data = df) + geom_boxplot()
但是它沒有用。 它只顯示了水平線,很抱歉,由於我是新用戶,所以無法上傳圖像。
我發現了一些使用填充或顏色的建議,但沒有用。
有什么建議么?
我的df樣本:
A B C
200.12 30.11 28.75
100.75 26.17 29.98
27.33 25.58 34.98
25.19 22.6 35.56
40.03 21.02 37.51
20.3 18.31 44.75
數據:
df <- read.table(text="A B C
200.12 30.11 28.75
100.75 26.17 29.98
27.33 25.58 34.98
25.19 22.6 35.56
40.03 21.02 37.51
20.3 18.31 44.75", header = TRUE)
首先,數據需要以長格式排列。 A
和B
的值與reshape2
包合並在一欄中。
library(reshape2)
df_l <- melt(df, id.vars = "C")
現在,可以創建圖:
library(ggplot2)
ggplot(df_l, aes(x = C, y = value)) +
stat_summary(aes(group = C),
fun.y = mean, fun.ymin = min, fun.ymax = max, geom = "crossbar")
橫線表示數據的范圍和平均值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.