ggpubr未在ggdotchart中创建多个条形图

ggpubr未在ggdotchart中创建多个条形图,r,ggplot2,ggpubr,R,Ggplot2,Ggpubr,利用ggpubr中的示例程序包代码,ggdotchart函数不会像示例中所示创建单独的段,而是只有一个段,尽管这些点似乎放置在正确的方向上。有没有人知道问题出在哪里?我认为这可能是由于tibbles和df的因素,但我还不能确定问题所在 代码: df% 过滤器(颜色百分比在%c(“J”、“D”))%>% 分组依据(切割、颜色)%>% 汇总(计数=n() ggdotchart(df,x=“cut”,y=“counts”, color=“color”,palete=“jco”,大小=3, add=“段

利用
ggpubr
中的示例程序包代码,
ggdotchart
函数不会像示例中所示创建单独的段,而是只有一个段,尽管这些点似乎放置在正确的方向上。有没有人知道问题出在哪里?我认为这可能是由于tibbles和df的因素,但我还不能确定问题所在

代码:

df%
过滤器(颜色百分比在%c(“J”、“D”))%>%
分组依据(切割、颜色)%>%
汇总(计数=n()
ggdotchart(df,x=“cut”,y=“counts”,
color=“color”,palete=“jco”,大小=3,
add=“段”,
add.params=list(color=“lightgray”,size=1.5),
位置=位置减淡(0.3),
ggtheme=theme_pubclean()
)
预计产量为:

但我得到的却是:
这里有一种方法,可以在不使用
ggpubr::ggdotchart
的情况下获得所需的绘图。问题似乎是
geom_段
不允许闪避,如下所述:此处:

然后我使用
ggplot
创建/复制所需的输出

ggplot(df_out, aes(x = cut, y = counts)) +
  geom_line(
    aes(col = color), # needed for dodging, we'll later change colors to "lightgrey"
    position = position_dodge(width = 0.3),
    show.legend = FALSE,
    size = 1.5
  ) +
  geom_point(
    aes(fill = color),
    data = subset(df_out, counts > 0),
    col = "transparent",
    shape = 21,
    size = 3,
    position = position_dodge(width = 0.3)
  ) +
  scale_color_manual(values = c("lightgray", "lightgray")) + #change line colors
  ggpubr::fill_palette(palette = "jco") +
  ggpubr::theme_pubclean()

我不知道
geom_段
不允许躲闪,现在一切都有意义了!谢谢@markus
# your data
df <- diamonds %>%
  filter(color %in% c("J", "D")) %>%
  group_by(cut, color) %>%
  summarise(counts = n())
df2 <- df
df2$counts <- 0

df_out <- purrr::bind_rows(df, df2)
df_out
ggplot(df_out, aes(x = cut, y = counts)) +
  geom_line(
    aes(col = color), # needed for dodging, we'll later change colors to "lightgrey"
    position = position_dodge(width = 0.3),
    show.legend = FALSE,
    size = 1.5
  ) +
  geom_point(
    aes(fill = color),
    data = subset(df_out, counts > 0),
    col = "transparent",
    shape = 21,
    size = 3,
    position = position_dodge(width = 0.3)
  ) +
  scale_color_manual(values = c("lightgray", "lightgray")) + #change line colors
  ggpubr::fill_palette(palette = "jco") +
  ggpubr::theme_pubclean()