我正在完成论文的图表并决定(after a discussion on stats.stackoverflow),为了传输尽可能多的信息,创建以下图表,在前台显示均值和在后台显示原始数据:
但是,仍然存在一个问题,那就是过度绘图。例如,标记点看起来像是反射(reflect)了一个数据点,但实际上在该位置存在 5 个具有相同值的数据点。
因此,我想知道在base graph
中是否有处理overplotting的方法。使用 points
作为函数。
例如,如果相应的点变暗、变厚或...
手动执行它不是一种选择(像这样的图表和点太多)。此外,ggplot2
也不是我想学习处理这个单一问题的内容(一个原因是我倾向于喜欢双轴,ggplot2
中不支持)。
更新:我编写了一个函数来自动创建上述图形并通过添加垂直或水平抖动(或两者)来避免过度绘图:check it out!
此功能现在可用作 raw.means.plot
和 raw.means.plot2
在 plotrix
包(在 CRAN 上)。
最佳答案
标准方法是在绘图之前向数据添加一些噪声。 R 有一个函数 jitter() 就是这样做的。您可以使用它向绘图中的坐标添加必要的噪声。例如:
X <- rep(1:10,10)
Z <- as.factor(sample(letters[1:10],100,replace=T))
plot(jitter(as.numeric(Z),factor=0.2),X,xaxt="n")
axis(1,at=1:10,labels=levels(Z))
关于r - 如何使用基本图避免过度绘制(对于点)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3584329/