R在重叠点之间水平增加空间geom_point

问题描述 投票:-1回答:1

我有一个类似于以下内容的数据表:enter image description here我正在尝试绘制每周对应每个患者的点(分类变量“数据”)(缺少一些纵向数据),但是我需要在水平轴上稍微增加分类变量“数据”的点之间的距离。我正在尝试以下代码:

df=read.delim("/Volumes/test.txt",header=TRUE,sep="\t")

df=df[order(df$ID),]

df$Timepoint<-factor(df$Timepoint,levels=c("w0","w1","w6","w7","w8","w10"))
df$Phase<-factor(df$Phase,levels=c("pre_treat","treat","post_treat"))

ggplot(df,aes(x=Timepoint,y=ID,shape=Data))+
  geom_point(aes(color=Data,shape=Data),size=3.5, position = position_jitter(w = 0.1, h = 0))+
  facet_wrap(~Phase,scales="free_x")+
  scale_shape_manual(values=c(16,0,17))+
  scale_colour_manual(values=c("black","black","gray60"))+
  theme_bw()+ylab("ID")+
  theme(axis.text.x = element_text(angle = 45, hjust = 1))

我遇到的问题是点太近了,每个符号的顺序似乎是随机表示的。enter image description here

我同时尝试了position_jitter和position_dodge,但仍然获得了对角线指向或重叠的点。非常感谢您的帮助!

r ggplot2 space overlapping
1个回答
0
投票
不是直接解决抖动问题的方法,但也许您可以使符号透明:

geom_point( ..., fill=alpha("red",0.2), color="black", shape=21 )

应与形状21-25一起使用
© www.soinside.com 2019 - 2024. All rights reserved.