千家信息网

R语言可视化中密度曲线图的介绍及其美化方法

发表于:2025-02-19 作者:千家信息网编辑
千家信息网最后更新 2025年02月19日,这篇文章主要介绍"R语言可视化中密度曲线图的介绍及其美化方法",在日常操作中,相信很多人在R语言可视化中密度曲线图的介绍及其美化方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对
千家信息网最后更新 2025年02月19日R语言可视化中密度曲线图的介绍及其美化方法

这篇文章主要介绍"R语言可视化中密度曲线图的介绍及其美化方法",在日常操作中,相信很多人在R语言可视化中密度曲线图的介绍及其美化方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"R语言可视化中密度曲线图的介绍及其美化方法"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

今天跟大家分享关于密度曲线图及其美化技巧!

密度曲线图可能平时大家用的不多,不过其实没什么神秘,它的功能于直方图一样,都是用于表达连续型数值变量的分布形态。

案例还是使用之前的关于钻石的那个数据集。


密度曲线图所使用的图层函数为geom_density() ,而且函数内position参数位置类型与我们之前讲到的直方图、柱形图(条形图时一样的)。

ggplot(diamonds,aes(x=price))+geom_density()


里面的线条颜色是通过colour参数进行控制(一定要记好colour与fill两个颜色填充参数的区别,colour控制线条、点颜色、fill控制区域颜色,所以在散点图、曲线、折线图途中使用colour参数,在面积图、柱形图中使用fill参数)

ggplot(diamonds,aes(x=price))+geom_density(colour="steelblue")


当然密度曲线的函数中也允许出现分类变量:

ggplot(diamonds,aes(x=price,colour=clarity))+geom_density()


上面说过colour控制点、线条颜色、fill控制区域颜色,但是密度曲线算是一个另类,仔细看上图你会发现,它不同于折线图,因为每条密度曲线都是一个闭合曲线,所以他是允许使用fill参数填充闭合区域的:

ggplot(diamonds,aes(x=price,fill=clarity,alpha = 1/10))+geom_density()


你会发现这样出来的图形除了密度曲线内部除了被填充颜色之外,整体形状与使用colour参数填充线条颜色是一样的。

现在继续让我们回忆一下,关于上一节中将直方图时,处理position时的场景,position主要有四个我们常用的参数:

identity(不做任何变换)、stack(堆积)、dodge(簇状)、fill(百分比堆积)

其实只要是geom开头的集合图层对象,都是适用这几个参数的,那么跟我我们的分析,以上密度曲线图默认的参数应该是identity,下面验证我们的猜想。

ggplot(diamonds,aes(x=price,fill=clarity,alpha = 1/10))+geom_density(position="identity")


ggplot(diamonds,aes(x=price,colour=clarity))+geom_density(position="identity")


果然不出我们所料,默认的带分类变量的密度曲线图确实是使用默认的identity参数。

那么我们依次尝试其他几种参数情况下的密度曲线图呈现何种效果:

堆积:(position="stack")

ggplot(diamonds,aes(x=price,fill=clarity))+geom_density(position="stack")


ggplot(diamonds,aes(x=price,colour=clarity))+geom_density(position="stack")


堆积:(position="dodge")# 案例来说密度曲线做成簇状效果是不合适的,不过我还是想看下到底神马效果

ggplot(diamonds,aes(x=price,fill=clarity))+geom_density(position=position_dodge(width =1000))


ggplot(diamonds,aes(x=price,colour=clarity))+geom_density(position=position_dodge(width =1000))



大家可以看到使用dodge参数之后,R语言会有提示建议,密度曲线图中X轴必须是无重复间隔刻度的数据,而此处的概率密度曲线无法满足这个要求:

那么最后一个位置参数是position=fill (堆积百分比)

ggplot(diamonds,aes(x=price,fill=clarity))+geom_density(position="fill")


ggplot(diamonds,aes(x=price,colour=clarity))+geom_density(position="fill")

关于概率密度曲线的分面表达:

ggplot(diamonds,aes(x=price,fill=clarity))+geom_density(position="fill")+facet_grid(.~clarity)


ggplot(diamonds,aes(x=price,colour=clarity))+geom_density(position="fill")+facet_grid(.~clarity)


通过图形效果我们可以看到,概率密度曲线的分面表达式是没有实际意义的,因为单独一个序列中只有一个类别,那么它的占比自然就是百分之百。

通过套用主题及配色模板,我们可以对密度曲线图进行适当美化:

ggplot(diamonds,aes(x=price,fill=clarity))+geom_density(position="fill")+theme_wsj()+scale_fill_wsj()+guides(fill=guide_legend(title=NULL))


ggplot(diamonds,aes(x=price,colour=clarity))+geom_density(position="fill")+theme_wsj()+scale_colour_wsj()+guides(colour=guide_legend(title=NULL))


ggplot(diamonds,aes(x=price,fill=clarity))+geom_density(position="stack")+theme_wsj()+scale_fill_wsj()+guides(fill=guide_legend(title=NULL))


ggplot(diamonds,aes(x=price,colour=clarity))+geom_density(position="stack")+theme_wsj()+scale_colour_wsj()+guides(colour=guide_legend(title=NULL))


因为套用的配色模板中颜色数量上限是6个,而我们的分类变量类别有8个,所以最后两个类别的线条色、填充色改成了默认。

到此,关于"R语言可视化中密度曲线图的介绍及其美化方法"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

曲线 密度 参数 曲线图 颜色 方法 语言 线条 控制 可视化 变量 效果 学习 函数 区域 概率 百分 直方图 类别 分类 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 数据库表单怎么建立 河南品质软件开发服务价格优惠 网络技术与人工智能专业 数据库实验数据库安全管理 网络安全给军事造成的影响 广东红松信息网络技术 平台管理软件服务器 稻草人显示数据库连接错误 数据库ACCESS编程软件 扬州软件开发初级入门哪里好 半导体测试软件开发书籍 清华大学数据库技术及应用 安装了sql数据库没有项目 吴江区官方授权经销服务器 阿里巴巴的网络技术有限公司 传统网络安全解决方案 手机服务器没有响应怎么回事 边缘服务器浪潮信息 从服务器返回一个参照 比尔大陆服务器 北京趣盈网络技术有限公司 微擎在哪里连接数据库 电视联网dns服务器填多少 网络安全需要准备哪些材料 附加数据库错误代码948 生产网络安全络管理规范 aps全称网络安全 学软件开发是吃青春饭 教育资源投入数据库 网络安全英语作文800
0