1

我正在尝试在 GGPlot2 中创建格式良好的 2 状态凹凸图

在下图中,我想减小 y 轴和第一个因子值“旧”之间的“空白”大小,并增加第二个值“新”右侧的空间大小。在真实数据中,我的文本是完整的句子,所以目前只显示第一部分。

左边有太多空白的凹凸图

我的代码:

old <- data.frame(Group = "old", Rank = 1:5, Text = c("Text1","Text2","Text3","Text4","Text5"))
new <- data.frame(Group = "new", Rank = c(4,2,1,5,3), Text = c("Text1","Text2","Text3","Text4","Text5"))
df <- rbind(old,new)

library(ggplot2)

ggplot(df, aes(x=Group, y= Rank, group =  Text, label = Text)) +
  geom_line() +
  scale_y_reverse() +
  geom_text(data = subset(df, Group == "new"), size=3, hjust=0) 
4

1 回答 1

3

您可以在ggplot()调用中将 x 变量转换为数字,然后用于scale_x_continuous()修改轴。

ggplot(df, aes(x=as.numeric(Group), y= Rank, group =  Text, label = Text)) +
  geom_line() +
  scale_y_reverse() +
  geom_text(data = subset(df, Group == "new"), size=3, hjust=0) +
  scale_x_continuous(limits=c(0.95,5),breaks=c(1,2),labels=levels(df$Group),
                     expand=c(0,0))
于 2013-08-13T07:28:15.677 回答