我正在尝试将标签放置在地理坐标上彼此非常接近的一些点旁边。当然,问题在于标签重叠。我已将以下帖子用作参考:
问题是我不想重定位标签,而是增加了标签间隔(例如,每隔10点)。
我试图在数据框中将列设置为alpha,以使不需要的点透明化
[![combined_df_c$alpha=rep(c(1,rep(0,times=11)),
times=length(combined_df_c$time)/
length(rep(c(1,rep(0,times=11)))))][1]][1]
我不知道为什么它不影响图并再次绘制所有标签。
预期的输出是我的绘图上的标签更少。
答案 0 :(得分:1)
您可以通过对geom_text实验的数据帧进行排序来实现。
为此,我使用了内置数据集mtcars,因为您未提供任何数据。使用df[seq(1,nrow(df),6),]
,我分6步对数据进行切片。这是随后在图形中显示的标签。您可以将其用于任何所需的步骤。切片的数据帧已提供给geom_text,因此它不再使用原始数据集,而仅使用切片的数据集。这样,标签的点数和标签的数相等。
df <- mtcars
labdf<- df[seq(1,nrow(df),6),]
ggplot()+
geom_point(data=df, aes(x=drat, y=seq(1:length(drat))))+
geom_text(data=labdf,
aes(x=drat, y=seq(1:length(drat))), label=labdf$drat)
您可以轻松调整案例代码。
还:您可以将aes放在ggplot()
中,如果您使用的数量多于gemo_point
,则可能会更有用。我这样做是这样,所以我可以澄清一下:geom_text()