2017-10-28 321 views
0

为什么这个图没有显示出重叠GGPLOT2的MPG数据集 - 如何理解geom_point图

一些在此数据集中共享汽车x和y(显示终端和HWY)相同的组合。

  • 例如,对于displ = 2和hwy = 29,有:1 midsize; 6个紧凑型和3个紧凑型。

然而,在这个地方只有一个绿点只显示1中型。我对这个图表有什么误解?

非常感谢!

ggplot(data = mpg) + 
geom_point(mapping = aes(x = displ, y = hwy, color = class)) 

enter image description here

回答

1

除了抖动,您还可以将geom_point()中的alpha参数更改为0.3或0.4,默认情况下为1,这意味着100%不透明。

ggplot(data = mpg) + 
geom_point(mapping = aes(x = displ, y = hwy, color = class, alpha = 0.3)) 

这将突出的过度绘制

2

卡斯滕,

goem_point()电话将地图坐标超过对方,所以你会看到只有一个点,这对于小型数据集更是如此。你可以使用geom_jitter()来解决这个问题,它允许你插入噪音到剧情,让你看到所有的点。

解决方案:geom_jitter()

这里我们使用geom_jitter(),插入噪音成积的数据让我们看到所有的重叠点。

if (require(ggplot2)) install.packages("ggplot2") 
data(mtcars) 
ggplot(data = mpg) + 
    geom_jitter(mapping = aes(x = displ, y = hwy, color = class)) 

叠加输出:(点稍微偏移来区分每个点)

注意插入的“噪音”如何让你区分情节点。

enter image description here

NB。抖动几何是geom_point(position =“jitter”)的便捷捷径。它为每个点的位置添加了少量的随机变化,并且是处理由较小数据集中的离散引起的重叠绘图的有用方法。

0

的geom_jitter解决方案和alpha变化的解决方案都是很好的地方。第三种可能性是使用geom_count()到标记的大小映射到这些坐标观测次数(与阿尔法调整一起):

library(ggplot2) 
data(mtcars) 
ggplot(data = mpg) + 
    geom_count(mapping = aes(x = displ, y = hwy, color = class), alpha = .5) 
+0

谢谢所有三个这么多 - 我明白了,我需要做一些基本的ggplot2在询问这些直截了当的问题之前工作 - ggplot作弊表可能是一个很好的开始概述。再次感谢 – Carsten

相关问题