ggplot:geom_boxplot不能仅对一个值正确排序中间值

问题描述

我真的很讨厌在没有可复制的示例的情况下问一个问题,但是要复制该问题可能需要太多的数据。相反,我将显示我拥有的代码,并希望有人指出一个错误

我正在创建一个带有geom_Boxplot的小提琴图。效果很好,除了其中一个箱线图显示较低的中位数,即使它在图表上正确排序(也就是说,图表应按y的中位数排序,小提琴图也按该顺序排序,但是箱图中绘制的中线显示中位数较低。当我独立地仔细检查中值时,我会按小提琴顺序获得正确的中值。参见图

here

图片

有人对geom_Boxplot绘制的中线为何在其他正确的情况下绘制的值有错误的建议吗?我知道没有reprex很难诊断,但我认为值得一试。

my_data <- other_data %>% 
  mutate(my_x = fct_reorder(my_x,my_y,median))

my_max <- 20

# Create violin plot with a Box plot within
p <- ggplot(my_data,aes(x = my_x,y = my_y,fill = my_x)) +
  geom_violin() + 
  geom_Boxplot(width = 0.1,color = "grey50",alpha = 0.7) +
  scale_y_continuous(breaks = seq(0,my_max,4),limits = c(0,my_max),expand = c(0,0)
  ) +
  scale_fill_manual(values = my_colors) +
  theme(axis.text.x = element_text(angle = 90,hjust = 0.5,vjust = 0.5,size  = 10,face = "bold")) 
p

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)