问题描述
我正在使用ggplot2对自己的数据集进行分组的小提琴图。数据集包含3个变量的350个观测值(5个位置的7个场景,每个场景有10个重复项),部分内容如下所示:
DF = read.csv("C:\\Users\\lqy\\Desktop\\Pilot_data.csv",na.strings = "---",header = TRUE)
DF = data.frame(DF)
DF$Scenarios = as.integer(DF$Scenarios)
figure = ggplot(DF,aes(x = Location,y = Recovery,fill = Scenarios)) +
geom_violin() +
stat_summary(fun="median",geom="point") +
labs(x="Locations",y="Days to 90% recovery") +
theme(axis.text = element_text(size = 10)) +
theme(axis.title = element_text(size = 10)) +
theme(legend.position = "right")
figure
我对这个数字非常满意,但是我添加的中点似乎聚集在情节的中间,而不是每个小提琴中。我猜这是因为它们应该在x轴上的点正上方对齐。但是,在这种情节中,是否有办法将每个对应的小提琴的中点放进去?
非常感谢您为我回答了这个问题!
添加:数据集在这里
(通过代码dput(DF[sample(nrow(DF),45),])
获取)
structure(list(Scenarios = c(8L,2L,10L,5L,3L,1L,8L,4L,10L),Location = c("Total_Catchment","Sec_51","Sec_53","Total_Catchment","Sec_55","Sec_54","Sec_53"),Recovery = c(316.5,839.5,179.5,277.5,923.5,664.5,494.5,639.5,273.5,327.5,830.5,714.5,357.5,300.5,504.5,752.5,265.5,535.5,208.5,303.5,564.5,339.5,766.5,396.5,271.5,185.5,370.5,825.5,191.5,186.5,582.5,364.5,326.5,332.5,901.5,706.5,187.5,577.5,680.5,506.5,301.5,559.5,713.5,324.5)),row.names = c(20L,121L,163L,37L,329L,348L,103L,112L,273L,52L,322L,309L,240L,187L,76L,338L,155L,339L,253L,69L,133L,158L,342L,235L,45L,146L,161L,106L,239L,189L,117L,157L,265L,258L,299L,321L,215L,98L,127L,132L,27L,111L,283L,203L
),class = "data.frame")
解决方法
解决方案可能会涉及向摘要层添加躲闪位置。下面的虚拟数据示例:
d <- structure(list(SNP = c("rs1","rs2","rs3","rs4","rs7","rs8","rs9","rs10","rs11","rs362"),X = c(5,1,6,2,11,3,1.2,2.2,3.2),Y = c("aa","bb","aa","ft","hg","ff","cc","yh","hyu")),class = "data.frame",row.names = c(NA,-10L))