R 点重合处理,坐标变换

绘制散点图时,经常会有点过分重合的情况,为了更好地进行可视化,可以使用以下方法进行改善。

一. 设置透明度

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)

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值