绘制散点图时,经常会有点过分重合的情况,为了更好地进行可视化,可以使用以下方法进行改善。
一. 设置透明度
ggplot(aes(x = age, y = friend_count), data = pf) +
geom_point(alpha = 1/20) +
xlim(13, 90)
进行y轴 的变换,看得更清楚:
ggplot(aes(x = age, y = friend_count), data = pf) +
geom_point(alpha = 1/20) +
xlim(13, 90) +
coord_trans(y = "sqrt")
二. 设置抖动
ggplot(aes(x = age, y = friend_count), data = pf) +
geom_jitter(alpha = 1/20) +
xlim(13, 90)
The geom_jitter() is a convenient shortcut for geom_point(position = “jitter”).
It adds a small amount of random variation to the location of each point, and is a useful way of handling overplotting caused by discreteness in smaller datasets.
引用自ggplot2官网
进行y轴 进行开方变换,看得更清楚:
ggplot(aes(x = age, y = friend_count), data = pf) +
geom_point(alpha = 1/20, position = position_jitter(h = 0)) +
xlim(13, 90) +
coord_trans(y = "sqrt")
有的friend_count为0,jitter处理之后会有负数产生,再开方处理便会产生虚数,所以要设置position_jitter(h = 0))
附:没有经过任何处理的原始散点图
ggplot(aes(x = age, y = friend_count), data = pf) +
geom_point() +
xlim(13, 90)