R|散点图+边际图(柱形图,小提琴图),颜值UP

简介: R|散点图+边际图(柱形图,小提琴图),颜值UP



散点图作为一种展示2组连续变量关系的常用可视化方式之一,添加点,线,箭头,线段,注释,甚至函数,公式,方差表都没有问题。

ggplot2-annotation|画图点“精”,让图自己“解释”

R-ggpmisc|回归曲线添加回归方程,R2,方差表,香不香?

本文简单的介绍2种散点图添加边际图的方法。


一 载入数据,R包

使用经典数据集iris

library(ggplot2) #加载ggplot2包
library(ggExtra)
library(ggstatsplot)
data(iris)
head(iris)

二 ggplot2 + ggExtra绘制边际散点图


使用ggplot2绘制散点图,然后利用ggExtra包的函数添加边际柱形图

2.1 绘制基础散点图

p1 <- ggplot(iris, aes(Sepal.Length, Sepal.Width)) +
 geom_point(color = "#00AFBB")
p1

2.2 添加一点点细节

1)添加横轴,数轴线;

2)添加R2 和 P值

3)添加回归曲线


p2 <- ggplot(iris, aes(Sepal.Length, Sepal.Width)) +
 geom_point(color = "#00AFBB") +
 geom_smooth(method="lm", se=T) +
 geom_hline(yintercept = 3, linetype = "dashed", color = "blue") +
 geom_vline(xintercept = 6, linetype = "dashed", color = "red") +
 annotate("text", x=4.5, y=4.25, parse=TRUE,
          label="r^2 == 0.0138 * ' p-value = 0.1529' ")
p2

既然是ggplot2绘制的,那更多细节还不是按照需求直接加就行嘛


2.3 添加边际条形图

使用ggMarginal添加, Type 可选参数 histogram, densityboxplot.

ggMarginal(p2, type="histogram", fill="#00AFBB")

三 ggstatsplot绘制边际散点图


直接使用ggstatsplot包的ggscatterstats函数绘制

library(ggstatsplot)
ggscatterstats(
 data = iris,                                          
 x = Sepal.Length,                                                  
 y = Sepal.Width,
 xlab = "Sepal Length",
 ylab = "Sepal Width",
 marginal = TRUE,
 marginal.type = "densigram",
 margins = "both",
 xfill = "blue", # 分别设置颜色
 yfill = "#009E73",
 title = "Relationship between Sepal Length and Sepal Width",
 messages = FALSE
)

其中marginal.type可选 histograms,boxplots,density,violin,densigram (density + histogram);可自行尝试效果。


OK,文献中常见的带边际图的散点图就绘制好了!更多参数设置详见参考资料。

相关文章
|
开发框架 监控 .NET
Visual Basic的Web服务和REST API开发指南
【4月更文挑战第27天】本文探讨了使用Visual Basic(VB.NET)构建Web服务和RESTful API的方法。首先介绍了Web服务的基础和REST API的概念,然后阐述了.NET Framework与.NET Core/.NET 5+对VB.NET的支持,以及ASP.NET Core在Web开发中的作用。接着,详细讲解了创建RESTful API的步骤,包括控制器与路由设置、模型绑定与验证,以及返回响应。此外,还讨论了安全措施、测试方法、部署选项和监控策略。最后强调,VB.NET开发者可以通过ASP.NET Core涉足现代Web服务开发,拓宽技术领域。
442 1
|
数据挖掘
跟着 Nature 学作图 | 相关性热图(显示相关性散点图)
跟着 Nature 学作图 | 相关性热图(显示相关性散点图)
814 0
|
7月前
|
机器学习/深度学习 人工智能 数据库
Mureka V6:10语种AI音乐工厂!昆仑万维「声场黑科技」颠覆作曲
昆仑万维推出的Mureka V6 AI音乐创作基座模型,支持10种语言歌词生成和纯音乐创作,通过自研ICL技术实现声场优化,覆盖爵士/电子/流行等多元风格,为音乐爱好者和专业创作者提供高效工具。
368 11
|
机器学习/深度学习 人工智能 算法
高性价比发文典范——101种机器学习算法组合革新骨肉瘤预后模型
随着高通量测序技术的飞速发展和多组学分析的广泛应用,科研人员在探索生物学奥秘时经常遇到一个令人又爱又恼的问题:如何从浩如烟海的数据中挖掘出潜在的疾病关联靶点?又如何构建一个全面而有效的诊断或预后模型?只有通过优雅的数据挖掘、精致的结果展示、深入的讨论分析,并且辅以充分的湿实验验证,我们才能锻造出一篇兼具深度与广度的“干湿结合”佳作。
1358 0
高性价比发文典范——101种机器学习算法组合革新骨肉瘤预后模型
|
机器学习/深度学习 人工智能 自然语言处理
探索人工智能前沿:自然语言处理的最新进展
探索人工智能前沿:自然语言处理的最新进展
736 2
|
Ubuntu Linux 网络安全
在Linux中,如何禁用root用户直接SSH登录?
在Linux中,如何禁用root用户直接SSH登录?
|
缓存 网络协议 Ubuntu
DHCP的开源实现及其在不同Linux发行版上的安装过程
DHCP的开源实现及其在不同Linux发行版上的安装过程
525 0
|
算法 atlas 网络可视化
Gehpi的网络布局
Gehpi的网络布局
|
机器学习/深度学习 并行计算 监控
基于深度学习的电动自行车头盔佩戴检测系统
基于深度学习的电动自行车头盔佩戴检测系统
|
人工智能 API 算法框架/工具
课时1:ModelScope社区Library技术架构介绍
课时1:ModelScope社区Library技术架构介绍