r - 分类变量的离散轴间距

标签 r ggplot2

我有一个分类轴,我想在该轴上直观地分隔该分类变量中的组。我不想刻面,因为它占用太多空间并且在视觉上不那么干净。

这是我想要的视觉示例,其中涉及一些乏味的黑客攻击(将 alpha 设置为 0 用于间距的非数据条目)。

library(ggplot2)
dd <- data.frame(x=factor(c(1,-1,2:10),levels=c(1,-1,2:10)), y=c(1,2,2:10), hidden=as.factor(c(0,1,rep(0,9))))
ggplot(data=dd,aes(x=x,y=y,alpha=hidden)) +
  geom_point() + scale_alpha_manual(values=c("1"=0,"0"=1))  +
  scale_x_discrete(breaks=c(1:10))

我希望能够使用以下数据结构(变量“groups”决定间距出现的位置):

dd2 <- data.frame(x=factor(1:10,), y=c(1:10), groups=c("A",rep("B",9)))

enter image description here

最佳答案

您可以通过 scale_x_discretebreakslimits 参数获得您正在寻找的结果。将 breaks 设置为 x 轴上的因子水平,并将 limits 设置为您想要/需要的带间隔物的因子水平。

这是一个例子:

library(ggplot2)

dd <- data.frame(x = factor(letters[1:10]), y = 1:10)

ggplot(dd) +
  aes(x = x, y = y) +
  geom_point() +
  scale_x_discrete(breaks = levels(dd$x),
                   limits = c(levels(dd$x)[1], "skip", levels(dd$x)[-1]))

enter image description here

关于r - 分类变量的离散轴间距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44141993/

相关文章:

r - 限制构面图中构面上的类别数量

r - ggplot2 中的双箱图

r - ggplot饼图标签

r - 在ggplot中以百万为单位显示轴值

r - 尝试在 dygraphs 中绘制每周 ts 对象时无法将索引转换为适当的类型

r - highcharter hcaes "group"使用情况,同时使用 highchart2() 绘制大量数据

rmysql 匹配列表中的数字

r - ggplot2 Boxplot 显示与计算不同的中位数

r - ggplot 省略了多边形孔

r - ggplot PDF 导入 Inkscape 在使用 alpha 时为 geom_point 点添加额外的空心圆