[英]Side-by-side and vertically stacked boxplots in R
我有3個不同的總體(人員類型1、2和3),正在按照3個變量(度,權重,度,偏心率)進行評估,並且希望在一組盒圖中查看這些變量。
對於每個人員類型,對於給定的變量,應將這些箱形圖並排放置,並按變量放置3個垂直堆疊圖:類似於3 x 3的箱形圖矩陣。
我當前的代碼正在為變量生成所需的垂直堆疊,但是在每個垂直堆疊圖中,我有1個聚合箱形圖,其中應該有3個並排(3種職員類型中的1種)。
qp <- ggplot(data, aes(stafftype., value, fill=stafftype.))
+ geom_boxplot() + facet_grid(variable~., scales = "free_y")
另請注意,這3個並排的箱形圖都應按人員類型上色,但我一直沒有成功。
這是使用內置iris
數據幀的示例。 我們刪除其中一個度量值列,以便只有三個度量值列,而不是四個度量值列,然后melt
數據框,以便將三個度量值列堆疊為“長”格式。 Species
類似於人員stafftype
, variable
類似於三個評估變量(度,加權度,偏心率)。
library(reshape2)
ggplot(melt(iris[,-1], id.var="Species")) +
geom_boxplot(aes(Species, value, colour=Species), show.legend=FALSE) +
facet_grid(variable ~ .) +
theme_bw()
如果要將每個圖放在單獨的面板中,可以執行以下操作:
ggplot(melt(iris[,-1], id.var="Species")) +
geom_boxplot(aes("", value, colour=Species), width=0.5, show.legend=FALSE) +
facet_grid(variable ~ Species) +
theme_bw() +
theme(axis.ticks.x=element_blank()) +
labs(x="")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.