R 在绘图中缩写文本标签

R 在绘图中缩写文本标签,r,ggplot2,R,Ggplot2,我有一本书。 我用于获取绘图的代码是: ggplot(sample.data, aes(y = N, axis1 = N, axis2 = V1, axis3 = V2, axis4 = V5)) + geom_alluvium(aes(fill = N, color = N), width = 1/12, alpha = 0.7, knot.pos = 0.4, reverse = TRUE, show.l

我有一本书。 我用于获取绘图的代码是:

ggplot(sample.data,
       aes(y = N, axis1 = N, axis2 = V1, axis3 = V2, axis4 = V5)) +
  geom_alluvium(aes(fill = N, color = N), 
                width = 1/12, alpha = 0.7, 
                knot.pos = 0.4,  reverse = TRUE, show.legend = FALSE) +
  geom_stratum( aes(fill = N), width = 1/8, color = "black",  show.legend = FALSE)+
  geom_label(stat = "stratum", label.strata = TRUE) +
  geom_text( stat = "stratum", label.strata = TRUE, show.legend = TRUE) +
  scale_x_continuous(breaks = 1:4, labels = c("N", "V1", "V2", "V5"))+
  ggtitle("Test2") +
  theme(axis.text.x = element_text(size = 10, face = "bold"),
        axis.text.y = element_blank(),
        axis.title.y = element_blank(),
        axis.ticks.y = element_blank(), 
        legend.position = "top"
        )
从情节上看,这些标签又大又不可读。我如何缩写它们并在情节中添加图例?我希望有一个函数可以这样做,这样我就可以删除第一个轴(N)标签

另外,如何在地层之间添加间隙

如何缩写标签

你也可以

  • 处理包含标签的dataframe列并对其执行一些字符串操作。例如,它将从标签中提取前n个字符或单词并使用它们。但我不确定你是否能通过这种方式得到想要的结果

  • 您可以将列替换为非缩写标签,并将新列替换为缩写标签。例如,直接提供缩写标签
如何将图例添加到绘图中

您可能可以通过设置
show.legend=TRUE

如何在地层之间添加间隙

如果要垂直分布地层,可以尝试给出
geom_地层
x
y
ymin
ymax
参数(尽管可能很复杂)。更简单的方法是为你们的地层设置边界,这样看起来就好像有空隙一样。您可以通过为边框指定
geom_地层
相应的参数-
size
color

ggplot中的错误(sample.data,aes(y=N,axis1=N,axis2=V1,axis3=V2,:未找到对象“sample.data”