统计绘图 | 既能统计分析又能可视化绘制的技能

news2025/4/16 19:04:30

在典型的探索性数据分析工作流程中,数据可视化统计建模是两个不同的阶段,而我们也希望能够在最终的可视化结果中将相关统计指标呈现出来,如何让将两种有效结合,使得数据探索更加简单快捷呢?今天这篇推文就告诉你如何高效解决这个问题。

  • R-ggstatsplot 统计可视化包介绍

  • R-ggstatsplot 统计类型

  • 更多详细的数据可视化教程,可订阅我们的店铺课程:

R-ggstatsplot 统计可视化包介绍

R-ggplot2 拥有超强的可视化绘制能力(小编用完果断安利)我们是知道的,但对于数据的统计分析结果进行展示,ggplot2还也有所欠缺,而R-ggstatsplot包的出现则可弥补不足(小编在研究生期间可没少使用该包绘图)。

  1. 官网 https://indrajeetpatil.github.io/ggstatsplot/

  2. 提供的绘图函数

  • ggbetweenstats:(violin plots) 用于比较多组/条件之间的统计可视化结果

  • ggwithinstats:(violin plots) 用于比较多组/条件内部间的统计可视化结果

  • gghistostats:(histograms) 用于数字型变量的分布。

  • ggdotplotstats:(dot plots/charts) 用于表示有关标记数字变量的信息分布抢矿

  • ggscatterstats:(scatterplots) 用于表示两个变量之间的相关性。

  • ggcorrmat:(correlation matrices) 用于表示多个变量之间的相关性。

  • ggpiestats:(pie charts) 用于表示类别型数据。

  • ggbarstats:(bar charts) 用于表示类别型数据

  • ggcoefstats:(dot-and-whisker plots) 用于回归模型和meta-分析。

接下来,我们就列举几个常用的可视化函数进行展示。

R-ggstatsplot 统计类型

  • ggbetweenstats

plot2 <- ggstatsplot::ggbetweenstats(
  data = datasets::morley,
  x = Expt,
  y = Speed,
  type = "nonparametric",
  plot.type = "box",
  title = "ggbetweenstats example02",
  xlab = "The experiment number",
  ylab = "Speed-of-light measurement",
  caption = "Visualization by DataCharm",
  pairwise.comparisons = TRUE,
  p.adjust.method = "fdr",
  outlier.tagging = TRUE,
  outlier.label = Run,
  ggtheme = hrbrthemes::theme_ipsum(base_family = "Roboto Condensed"),
  ggstatsplot.layer = FALSE
)

ggbetweenstats

  • ggwithinstats

# for reproducibility and data
set.seed(123)
library(WRS2)

# plot
plot3 <- ggwithinstats(
  data = WineTasting,
  x = Wine,
  y = Taste,
  title = "Wine tasting",
  caption = "Data source: `WRS2` R package",
  ggtheme = hrbrthemes::theme_ipsum(base_family = "Roboto Condensed"),
  ggstatsplot.layer = FALSE
)

ggwithinstats

  • gghistostats

# for reproducibility
set.seed(123)

# plot
plot4 <- gghistostats(
  data = ggplot2::msleep, # dataframe from which variable is to be taken
  x = awake, # numeric variable whose distribution is of interest
  title = "Amount of time spent awake", # title for the plot
  caption = substitute(paste(italic("Source: "), "Mammalian sleep data set")),
  test.value = 12, # default value is 0
  binwidth = 1, # binwidth value (experiment)
  ggtheme = hrbrthemes::theme_ipsum(base_family = "Roboto Condensed"), # choosing a different theme
  ggstatsplot.layer = FALSE # turn off ggstatsplot theme layer
)

gghistostats

  • grouped_gghistostats

# for reproducibility
set.seed(123)

# plot
plot5 <- grouped_gghistostats(
  data = dplyr::filter(
    .data = movies_long,
    genre %in% c("Action", "Action Comedy", "Action Drama", "Comedy")
  ),
  x = budget,
  test.value = 50,
  type = "nonparametric",
  xlab = "Movies budget (in million US$)",
  grouping.var = genre, # grouping variable
  normal.curve = TRUE, # superimpose a normal distribution curve
  normal.curve.args = list(color = "red", size = 1),
  title.prefix = "Movie genre",
  ggtheme = hrbrthemes::theme_ipsum(base_family = "Roboto Condensed"),
  # modify the defaults from `ggstatsplot` for each plot
  ggplot.component = ggplot2::labs(caption = "Source: IMDB.com"),
  plotgrid.args = list(nrow = 2),
  annotation.args = list(title = "Movies budgets for different genres")
)

grouped_gghistostats

  • ggscatterstats

plot6 <- ggscatterstats(
  data = ggplot2::msleep,
  x = sleep_rem,
  y = awake,
  xlab = "REM sleep (in hours)",
  ylab = "Amount of time spent awake (in hours)",
  title = "Understanding mammalian sleep",
  ggtheme = hrbrthemes::theme_ipsum(base_family = "Roboto Condensed")
)

ggscatterstats

  • ggcorrmat

# for reproducibility
set.seed(123)

# as a default this function outputs a correlation matrix plot
plot7 <- ggcorrmat(
  data = ggplot2::msleep,
  colors = c("#B2182B", "white", "#4D4D4D"),
  title = "Correlalogram for mammals sleep dataset",
  subtitle = "sleep units: hours; weight units: kilograms",
  ggtheme = hrbrthemes::theme_ipsum(base_family = "Roboto Condensed")
)

ggcorrmat

  • ggbarstats

# for reproducibility
set.seed(123)
library(ggplot2)

# plot
plot8 <- ggbarstats(
  data = movies_long,
  x = mpaa,
  y = genre,
  title = "MPAA Ratings by Genre",
  xlab = "movie genre",
  legend.title = "MPAA rating",
  ggtheme = hrbrthemes::theme_ipsum(base_family = "Roboto Condensed"),
  ggplot.component = list(ggplot2::scale_x_discrete(guide = ggplot2::guide_axis(n.dodge = 2))),
  palette = "Set2"
)

ggbarstats

跟多详细例子,小伙伴们可参考官网进行解读。其保存图片的方式使用ggsave()即可。

总结

这一篇推文我们介绍了R-ggstatsplot进行统计分析并将结果可视化,极大省去了绘制单独指标的时间,为统计分析及可视化探索提供非常便捷的方式,感兴趣的小伙伴可仔细阅读哦~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1814607.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用 Scapy 库编写 TCP 窗口大小探测攻击脚本

一、介绍 1.1 概述 TCP窗口大小探测攻击是一种信息收集攻击&#xff0c;攻击者通过向目标服务器发送特制的TCP数据包&#xff0c;探测目标服务器的TCP接收窗口大小&#xff08;TCP Window Size&#xff09;。了解目标服务器的TCP接收窗口大小&#xff0c;可以帮助攻击者优化后…

Spring Web MVC之过滤器Filter和拦截器HandlerInterceptor的区别和用法

作用时机不一样 Spring 框架有一个很重要的类DispatcherServlet。这个类继承了HttpServlet&#xff0c;HttpServlet实现了Servlet接口。相当于图片中的Servlet。所有和Spring框架相关配置&#xff0c;例如注解、xml配置、其他数据库连接配置、bean配置、拦截器配置等其他配置&…

深度学习研究生的职业前景:未来趋势与机遇

deep learning 深度学习研究生的职业前景&#xff1a;未来趋势与机遇一、深度学习的应用领域1. 计算机视觉2. 自然语言处理&#xff08;NLP&#xff09;3. 数据分析4. 游戏开发5. 健康医疗 二、职业机遇与挑战1. 工作机会2. 竞争与挑战3. 薪资前景 三、职业发展策略对于深度学习…

国外创意二维码应用:飞利浦旧物翻新活动,传播可持续性消费的重要性!

你知道去年有超过1000万件礼物被扔进了垃圾场吗? 这些被丢弃的物品中有许多仍在使用&#xff0c;飞利浦希望改变这种浪费现象。 去年的地球日&#xff0c;飞利浦策划了一场名为“Better than New” 的二维码营销活动。他们发布了一个视频&#xff0c;通过这个短视频将所有最终…

钉钉魔点指纹考勤机多少钱一台,指纹门禁考勤一体机价格

钉钉魔点指纹考勤机一台多少钱呢&#xff0c;指纹门禁考勤一体机的价格又是多少 钉钉魔点 X2 智能指纹考勤门禁一体机的参考价格是 359 元。 其具体参数情况如下&#xff1a; 产品类型&#xff1a;属于指纹考勤门禁一体机&#xff1b; 验证方式&#xff1a;为电容指纹&…

4、优化阶段

优化概述 编译程序总框架&#xff1a; 优化:对程序进行各种等价变换&#xff0c;使得从变换后的程序出发&#xff0c;能生成更有效的目标代码。 等价:不改变程序的运行结果。 有效:目标代码运行时间短&#xff0c;占用存储空间小。 >目的 产生更高效的代码 >遵循的原则 …

618值得购买的东西有哪些?618四款必囤好物清单分享!

随着618购物狂欢节的脚步日益临近&#xff0c;身为数码领域的资深爱好者&#xff0c;我深感有必要为大家推荐一系列经过精心挑选的数码产品精选。无论是热衷于科技前沿的探索者&#xff0c;还是希望通过智能设备提升生活品质的时尚达人&#xff0c;本文所介绍的每一款数码产品都…

MT2096 数列分段

代码&#xff1a; #include <bits/stdc.h> using namespace std; const int N 1e5 10; int n, m; int a[N]; int ans 1; int main() {cin >> n >> m;for (int i 1; i < n; i)cin >> a[i];int num 0;for (int i 1; i < n; i){if (num a[i…

(1)图像识别yolov5—安装教程

目录 1、安装YOLOv5: 2、下载预训练模型: 3、识别示例图片: 1、安装YOLOv5: 首先,你需要在你的计算机上下载 YOLOv5 的文件包,下载链接:https://github.com/ultralytics/yolov5。下载后对压缩文件进行解压。 通常使用 YOLOv5 识别物体,需要安装必要的 依赖…

DataX(DataX简介、部署、同步数据)

DataX&#xff08;DataX简介、部署、同步数据&#xff09; ☀快乐无限 法力无边 目录 DataX&#xff08;DataX简介、部署、同步数据&#xff09; 1.DataX简介 1&#xff09;数据采集模块&#xff1a; 2&#xff09;数据写入模块&#xff1a; 2.DataX部署 1&#xff09;Da…

《AI企业级知识库》-rasa爆改中文版本-实战!

阿丹&#xff1a; 之前有同学反应分享的东西有点概念化&#xff0c;表示不看着代码无法更深刻能理解。那么今天直接上代码&#xff01;&#xff01;&#xff01; 有两种方式使用自己训练好的nlu 1、rasa与nul分开启动&#xff0c;就是在rasa中的配置中配置好目标对应的nlu的服…

语法04 C++ 标准输入语句

标准输入 使用格式&#xff1a;cin >> 输入的意思就是把一个值放到变量里面去&#xff0c;也就是变量的赋值&#xff0c;这个值是由我们自己输入的。 (注意:输入变量前要先定义&#xff0c;输入完之后要按Enter键。) 输入多个变量&#xff0c;与输出类似&#xff0c;…

全球知名哲学家思想家教育家颜廷利:清明节的教育意义

在21世纪全球公认十大思想家的行列中&#xff0c;颜廷利大师以其独到的见解和深刻的哲学思考而备受推崇。随着清明节的临近&#xff0c;人们纷纷前往先人的墓地进行祭奠&#xff0c;其中烧纸钱是一项重要仪式。然而&#xff0c;亚洲十大顶级杰出人物、当代易学泰斗三大人物颜廷…

Python 围棋游戏【含Python源码 MX_008期】

简介&#xff1a; 围棋&#xff0c;源自中国&#xff0c;是一种两人对弈的策略棋类游戏。它被认为是世界上最复杂的棋类游戏之一&#xff0c;因为它的规则简单&#xff0c;但变化复杂多样。围棋的游戏目标是在棋盘上占领更多的地盘&#xff0c;并用自己的棋子围住对手的棋子&am…

禁用PS/Photoshop等一系列Adobe旗下软件联网外传用户数据操作

方案一&#xff1a; 下载火绒杀毒&#xff0c;在联网请求上禁用Adobe软件的联网请求&#xff0c;甚至还可以额外发现哪些是它要想要偷偷摸摸干的。 方案二&#xff1a; 最后注意&#xff1a; 用盗版软件只是获得了使用权&#xff01;

Mcgs 屏幕Modbus RTU通讯调试

目录 1. 设备窗口1.1 添加设备构件1.2 设备配置1.2.1 通用串口父设备配置1.2.2 设备0--ModbusRTU配置2. 设计用户窗口2.1 关联设备通道与实时数据库2.3 用户窗口3. 通信测试本文想要实现通过Modbus协议与Mcgs屏幕进行通信收发数据。在使用Mcgs屏幕进行Modbus通信时,一般Mcgs屏…

个股期权103call是什么意思?

个股期权103call是什么意思&#xff1f; 在金融市场中&#xff0c;个股期权作为一种金融衍生工具&#xff0c;为投资者提供了多样化的投资策略。其中&#xff0c;“103call”这一术语&#xff0c;特指一种特定的期权交易策略&#xff0c;它涉及到看涨期权与虚值状态。 文章来…

ROS——publisher、subscriber的实现

发布、订阅关系架构 创建发布者代码 通过CMakeList设置代码编译规则 add_executable(velocity_publisher src/velocity_publisher.cpp)target_link_libraries(velocity_publisher ${catkin_LIBRARIES}) Velocity Velocity这个词有多重含义&#xff0c;具体意思根据上下文有所…

eNSP学习——配置高级的访问控制列表

目录 主要命令 原理概述 实验目的 实验内容 实验拓扑 实验编址 实验步骤 1、基本配置 2、搭建OSPF网络 3、配置Telnet 4、配置高级ACL控制访问 需要eNSP各种配置命令的点击链接自取&#xff1a;华为&#xff45;NSP各种设备配置命令大全PDF版_ensp配置命令大全资源-…

有哪些ai聊天推荐?简单分享三款

有哪些ai聊天推荐&#xff1f;在当今数字化时代&#xff0c;人工智能&#xff08;AI&#xff09;聊天软件已经成为我们日常生活中不可或缺的一部分。无论是与朋友、家人还是同事交流&#xff0c;这些智能聊天软件都能为我们提供极大的便利。那么&#xff0c;市面上有哪些值得推…