点击上方“DataCharm”,选择“星标”公众号
今天继续给大家介绍一个偏学术科研的统计可视化R包-ggdensity,这个工具在做一些和密度估计可视化结果展示的时候非常有用呢,下面小编就给大家简单介绍一下 ggdensity工具~~
前言
我们的数据可视化课程已经上线啦!!目前课程的主要方向是 科研、统计、地理相关的学术性图形绘制方法,后续也会增加商务插图、机器学等、数据分析等方面的课程。课程免费新增,这点绝对良心!
我们第一个数据可视化交流圈子也已经上线了,主要以我的第一本书籍《科研论文配图绘制指南-基于Python/R语言》为基础进行拓展,提供「课堂式」教学视频,还有更多拓展内容,可视化技巧远超书籍本身,书籍修正和新增都会分享到圈子里面~~
参与课程或者圈子的你将获取到:学员答疑、可视化资源分享、可视化技巧补充、可视化业务代做(学员和甲方对接)、副业交流、提升认知等等。
ggdensity简介
安装 我们可以通过如下语句安装和调用该工具:
install.packages("ggdensity")
#或者如下
if (!requireNamespace("remotes")) install.packages("remotes")
remotes::install_github("jamesotto852/ggdensity")
# 调用
library("ggdensity")
基本用法
ggdensity完美兼容了ggplot2的绘图语法,其常见绘图函数更是集成了多个核密度计算方法,下面就分别列举几个常用函数和对应可视化绘制结果。
geom_density_2d_filled()和geom_hdr()
使用ggplot2的geom_density_2d_filled()函数绘制的核密度估算结果:
library("tidyverse"); theme_set(theme_minimal())
theme_update(panel.grid.minor = element_blank())
library("ggdensity")
library("patchwork")
df <- data.frame("x" = rnorm(1000), "y" = rnorm(1000))
p <- ggplot(df, aes(x, y)) + coord_equal()
p + geom_density_2d_filled()
p + geom_hdr()
可以看出:ggdensity的geom_hdr()函数试图通过展示可解释的估计分布区域来解决此问题,即通过绘制估计密度的50%、80%、95% 和 99% HDR,
可视化亚群(Visualizing subpopulations)
library("palmerpenguins")
ggplot(penguins, aes(flipper_length_mm, bill_length_mm, fill = species)) +
geom_hdr(xlim = c(160, 240), ylim = c(30, 70)) +
geom_point(shape = 21)
还可以通过geom_hdr_lines()函数绘制线框样式:
还可以分面操作:
ggplot(penguins, aes(flipper_length_mm, bill_length_mm, fill = species)) +
geom_hdr(xlim = c(160, 240), ylim = c(30, 70)) +
geom_point(shape = 21) +
facet_wrap(vars(species))
地毯密度图(Rug plots) 我们先看一下ggplot2绘制的结果:
ggplot(cars, aes(speed, dist)) +
geom_density_2d() +
geom_point() +
geom_rug()
接下来看下geom_hdr_rug()函数的绘制效果:
ggplot(cars, aes(speed, dist)) +
geom_hdr() +
geom_point(color = "red") +
geom_hdr_rug()
更多可视化案例可参考ggdensity的官网:R-ggdensity官网[1]
总结
今天介绍的R-ggdensity拓展工具,对最高密度区域(HDRs) 进行了很好的可视化展示,在一些数据预处理或展示阶段,可以帮助使用者更好的发掘数据,希望对读者有所帮助,大家也可以在实际的情况下多使用该图进行数据展示。
可视化学习圈子是干什么的?
可视化学习圈子是书籍「科研论文配图绘制指南-基于Python/R语言」一书的学下圈子:主要通过以下几个方面,给大家带来比纸质书籍更丰富的学习内容:
视频教学,和读者零距离互动交流 及时修正勘误和定期新增绘制知识点 拓展衍生,绘图知识点远超书籍本身 直播视频+拓展资料+答疑,学习更高效
「PS」:我们直播教学内容为课堂式教学,原作者带着大家对书籍一章、一节、一页的进行教学。而且直播的视频都会通过剪辑后整理成课程,圈子中的同学可以免费、反复观看。当然,新增内容和定期答疑,直播也是如此。
为何会有这个书籍学习社群?无门槛的微信群难免会鱼龙混杂,问题和质量都无法得到保证,而且一些关键问题经常被淹没,且没有沉淀价值。
随着添加我微信的人日益增多,向我提问的人也越来越多,随便回答一下就太不负责任了;不回答也不是很好;如果都仔细回答,我也有自己的工作并且确实很忙,真的有点心有余而力不足!所以我才会建立这么一个渠道来沉淀我的可视化技巧和分享经验,以及给大家提供一个坚持学习的平台。
书籍双十一优惠价,真的超划算呢!
有需要的同学千万别错过了呢
微信扫码下方二维码即可参与我们的书籍学习圈子啦:
系统学习可视化
当然,在学习数据可视化的道路上,你也有很多问题得不到解答,也可以加入我们的可视化课程(可视化系列课程推文)后,在学员群里和大家一起谈论,一起进步,或者直接向我提问。如果我觉得你的问题很具有普适性,我会把它写成文章发布在公众号上,让更多人看到,有关我们数据可视化系列课程的服务内容,可以参考下面的 阅读原文。
猜你喜欢
参考资料
R-ggdensity官网: https://jamesotto852.github.io/ggdensity/index.html。
喜欢就点个 在看 呗 👇