在ggplot2中的几何上均匀地应用抖动

理查德·边界

我想使两个几何图形抖动相同的数量考虑下面的最小示例:

library(ggplot2)
pdat <- data.frame(x = c(1,1,2,2,4,4,8,8),
                   y = c(1,1.1,2,2.2,3,3.3,4,4.4),
                   ymin = c(1,1.1,2,2.2,3,3.3,4,4.4)-.9^(0:7),           
                   ymax = c(1,1.1,2,2.2,3,3.3,4,4.4)+.9^(0:7),
                   colour = as.factor(rep(1:2,4)))

ggplot(pdat, aes(x=x,y=y,ymin=ymin,ymax=ymax,color=colour)) + 
    geom_linerange(position='jitter') + geom_point(position='jitter')

ggplot(pdat, aes(x=jitter(x),y=y,ymin=ymin,ymax=ymax,color=colour)) + 
    geom_linerange() + geom_point()

产生以下图: ggplots

在这两种情况下,抖动在几何之间都是随机的(点和线范围位于不同的位置),而我希望它们对于每个数据点(点在相应线范围的中间)保持一致。这可能吗?

请注意,我不会考虑将噪声手动添加到x变量中作为解决方案,因为这会破坏应用坐标变换的能力。例如,定义pdat$x2 <- pdat$x+rnorm(8)/10

ggplot(pdat, aes(x=x2,y=y,ymin=ymin,ymax=ymax,color=colour)) + 
    geom_linerange() + geom_point()

看起来不错,但随后抖动的变化会受到任何后续转换的影响,如

ggplot(pdat,aes(x=x2,y=y,ymin=ymin,ymax=ymax,color=colour)) + 
    geom_linerange() + geom_point() + scale_x_log10()
dc37

使用position_jitter函数,您可以添加一个seed值以获得可再现的抖动效果:

library(ggplot2)

ggplot(pdat, aes(x = x, y = y, ymin = ymin, ymax = ymax, color = colour))+
  geom_point(position = position_jitter(seed = 123, width =0.2))+
  geom_linerange(position = position_jitter(seed = 123, width = 0.2))

在此处输入图片说明

它能回答您的问题吗?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用geom_point有条件地使用ggplot2中的抖动

来自分类Dev

如何在ggplot2中抖动线

来自分类Dev

如何更改ggplot2中的图例几何

来自分类Dev

在ggplot2中躲避两个不同的几何

来自分类Dev

有条件地在ggplot2中应用scale_fill_gradient

来自分类Dev

X轴上的ggplot2线重叠...抖动未取得任何良好结果

来自分类Dev

如何控制ggplot2中的哪些图例中显示哪些几何图形?

来自分类Dev

如何在ggplot2中的geom_rect对象上应用渐变填充?

来自分类Dev

如何在ggplot2中为单个几何/颜色组合创建图例条目?

来自分类Dev

将几何标签放置在ggraph / ggplot2中的圆形布局之外

来自分类Dev

可以仅针对ggplot2中的某些几何关闭剪切吗?

来自分类Dev

ggplot2中的自定义几何的自定义比例

来自分类Dev

无法在ggplot2中为混合几何图形生成图例

来自分类Dev

ggplot2:在图例栏附近添加分布抖动

来自分类Dev

ggplot2和一组抖动/闪避点

来自分类Dev

从ggplot2中的ggplot x轴上删除NA

来自分类Dev

ggplot2在列之间创建不均匀的间距

来自分类Dev

调整ggplot2几何图块的高度和宽度

来自分类Dev

如何制作具有多个几何形状的自定义ggplot2几何图形

来自分类Dev

ggplot2:应用变量中的自定义

来自分类Dev

图例控制,ggplot2中具有不同x比例和不同几何的两个数据框

来自分类Dev

平滑ggplot2地图

来自分类Dev

在ggplot2中的图形上用图像标记图

来自分类Dev

无法在R中的debian 7.6上安装ggplot2

来自分类Dev

辅助屏幕上全屏Powerpoint中的ggplot2 png

来自分类Dev

更改 R 中 ggplot2 图形上的标签数量

来自分类Dev

使用测深数据将ggplot2地图分层到ggmap卫星上

来自分类Dev

有条件地在ggplot2图形中隐藏数据标签

来自分类Dev

在ggplot2轴标签的R序列中优雅地创建字符串

Related 相关文章

  1. 1

    使用geom_point有条件地使用ggplot2中的抖动

  2. 2

    如何在ggplot2中抖动线

  3. 3

    如何更改ggplot2中的图例几何

  4. 4

    在ggplot2中躲避两个不同的几何

  5. 5

    有条件地在ggplot2中应用scale_fill_gradient

  6. 6

    X轴上的ggplot2线重叠...抖动未取得任何良好结果

  7. 7

    如何控制ggplot2中的哪些图例中显示哪些几何图形?

  8. 8

    如何在ggplot2中的geom_rect对象上应用渐变填充?

  9. 9

    如何在ggplot2中为单个几何/颜色组合创建图例条目?

  10. 10

    将几何标签放置在ggraph / ggplot2中的圆形布局之外

  11. 11

    可以仅针对ggplot2中的某些几何关闭剪切吗?

  12. 12

    ggplot2中的自定义几何的自定义比例

  13. 13

    无法在ggplot2中为混合几何图形生成图例

  14. 14

    ggplot2:在图例栏附近添加分布抖动

  15. 15

    ggplot2和一组抖动/闪避点

  16. 16

    从ggplot2中的ggplot x轴上删除NA

  17. 17

    ggplot2在列之间创建不均匀的间距

  18. 18

    调整ggplot2几何图块的高度和宽度

  19. 19

    如何制作具有多个几何形状的自定义ggplot2几何图形

  20. 20

    ggplot2:应用变量中的自定义

  21. 21

    图例控制,ggplot2中具有不同x比例和不同几何的两个数据框

  22. 22

    平滑ggplot2地图

  23. 23

    在ggplot2中的图形上用图像标记图

  24. 24

    无法在R中的debian 7.6上安装ggplot2

  25. 25

    辅助屏幕上全屏Powerpoint中的ggplot2 png

  26. 26

    更改 R 中 ggplot2 图形上的标签数量

  27. 27

    使用测深数据将ggplot2地图分层到ggmap卫星上

  28. 28

    有条件地在ggplot2图形中隐藏数据标签

  29. 29

    在ggplot2轴标签的R序列中优雅地创建字符串

热门标签

归档