【R语言】对一个Plot绘制多个图,并且每个图单元也包含多个图

以一个Plot绘制五行六列共30个图,然后每30个图单元包含两个图为例:

如下图所示:

代码如下:

for (i in 1:(5*6)) {create_subplots <- function() {library(ggplot2)library(dplyr)library(tidyr)# 创建一个随机的数据框simulated_data <- data.frame(V1 = rnorm(100, mean = 0, sd = sqrt(0.5)),  # 生成均值为 mean,标准差为 sd 的正态分布随机值V2 = rgamma(100, shape = 2, scale = 1), # 生成伽马分布随机值,shape 为形状参数,scale 为尺度参数V3 = runif(100, min = 0, max = 1), # 生成均值为 mean,标准差为 sd 的正态分布随机值V4 = rpois(100, lambda = 5), # 生成泊松分布随机值,lambda 为泊松分布的参数V5 = rexp(100, rate = 0.5), # 生成指数分布随机值,rate 为指数分布的参数V6 = rbinom(100, size = 10, prob = 0.1) # 生成二项分布随机值,size 为试验次数,prob 为成功的概率)simulated_data <- simulated_data %>%rename(Case1 = V1,Case2 = V2,Case3 = V3,Case4 = V4,Case5 = V5,Case6 = V6)simulated_data_long <- gather(simulated_data, key = "variable", value = "value")# 创建一个含有多个琴图的图表,每个琴图对应数据的一个列p1 <- ggplot(simulated_data_long, aes(x = variable, y = value)) +geom_violin(alpha = 0.5, size = 0.1) +# 调整透明度和线条宽度geom_boxplot(fill = "gray", alpha = 0.04, width = 0.02) +# 调整透明度和线条宽度geom_jitter(aes(color = variable), width = 0.02, alpha = 0.7, size = 0.03) +# 调整透明度和点的大小labs(x = " ",y = "",title = " ") +scale_color_discrete(name = " ") +theme_minimal() +facet_wrap(~ variable, scales = "free")+theme(strip.text = element_blank(),legend.text = element_text(size = 0.12),  # 调整图例文本大小legend.title = element_text(size = 0.15),  # 调整图例标题大小legend.key.size = unit(1.5, "lines"),  # 调整图例间距大小axis.title.y = element_text(size = 0.18) # 调整Y轴标签的字体大小) + theme(legend.position = "none",    axis.title.x = element_blank(),  axis.title.y = element_blank(),  axis.text.x = element_blank(),   axis.text.y = element_blank(),   axis.ticks.x = element_blank(),  axis.ticks.y = element_blank()   )library(ggstatsplot)# 绘制分组箱线图p2 <- ggplot(iris, aes(x = Species, y = Sepal.Length)) +geom_boxplot() +theme(legend.position = "none",    axis.title.x = element_blank(),axis.title.y = element_blank(), axis.text.x = element_blank(),   axis.text.y = element_blank(),   axis.ticks.x = element_blank(),  axis.ticks.y = element_blank()   )subplot <- p1 / p2 return(subplot)}main_plot_list[[i]] <- create_subplots()
}main_plot <- wrap_plots(main_plot_list, ncol = 6)print(main_plot)

 

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

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

相关文章

【机器学习】机器学习重要方法—— 半监督学习:理论、算法与实践

文章目录 引言第一章 半监督学习的基本概念1.1 什么是半监督学习1.2 半监督学习的优势 第二章 半监督学习的核心算法2.1 自训练&#xff08;Self-Training&#xff09;2.2 协同训练&#xff08;Co-Training&#xff09;2.3 图半监督学习&#xff08;Graph-Based Semi-Supervise…

【服务器04】之【Navicat连接阿里云】

通过前三篇文章&#xff0c;现在我们测试可以连接数据库了 点开桌面的 接下找来的主机 地址在以下 登录阿里云 登陆账号后 点击控制台 输入RDS 弹出新页面&#xff0c;并点击运行中的 1 点管理 复制外网地址 鼠标靠近就会出现复制图标 用户名 和 密码 是注册阿里云的高权限账…

git常见实用命令,简单上手操作

常用命令&#xff1a; 添加远程账号名称&#xff1a;git config --global user.name ‘’ 添加用户eamil&#xff1a;git config --global user.email ‘’ 初始化厂库&#xff1a;git init 新建文件夹&#xff1a;mkdir 文件夹名 新建文件&#xff1a;touch 文件名 查看…

静态ip详解

静态IP&#xff08;Static IP&#xff09;是指在计算机网络中&#xff0c;手动配置的固定不变的IP地址。相对于动态IP地址&#xff08;由DHCP自动分配的临时IP地址&#xff09;&#xff0c;静态IP地址在分配后不会更改&#xff0c;适用于需要稳定、可预测网络地址的情况&#x…

对错问题:凡事没有绝对的对与错,要看义所在、良知所在

孔子说&#xff1a;君子对于天下所发生的很多事&#xff0c;如评判政策变动、战争等&#xff0c;没有绝对的对&#xff0c;也没有绝对的错&#xff0c;一切要看事情本身是否符合“ 义 ”。

实验2:RIPv2的配置

由于RIPv1是有类别的路由协议,路由更新不携带子网信息,不支持不连续子网、VLSM、手工汇总和验证等&#xff0c;本书重点讨论RIPv2。 1、实验目的 通过本实验可以掌握&#xff1a; RIPv1和 RIPv2的区别。在路由器上启动RIPv2路由进程。激活参与RIPv2路由协议的接口。auto-sum…

SpringSecurity实战入门——认证

项目代码 gson/spring-security-demo 简介 Spring Security 是 Spring 家族中的一个安全管理框架。相比与另外一个安全框架Shiro,它提供了更丰富的功能,社区资源也比Shiro丰富。 一般来说中大型的项目都是使用SpringSecurity来做安全框架。小项目有Shiro的比较多,因为相比…

WordPress管理员后台登录地址修改教程,WordPress admin登录地址文件修改方法

我们使用WordPress时&#xff0c;管理员后台登录默认地址为“域名/wp-login.php”或“域名/wp-admin”&#xff0c;为了安全&#xff0c;一般会把此地址改掉&#xff0c;防止有人恶意来攻击咱的WordPress&#xff0c;今天出个WordPress后台登录地址修改教程&#xff0c;修改之后…

如何用Xcode创建你的第一个项目?学起来

前言 上一期&#xff0c;咱们已经有安装XCode的教程了。有小伙伴说建议跳过&#xff0c;嗯。。。如果你对开发很熟悉&#xff0c;那可以。但如果不熟悉&#xff0c;建议还是按照教程一步步来哦&#xff01; 毕竟统一了开发工具&#xff0c;咱们后续讲的内容学习起来也会简单一…

[机器学习算法] K均值聚类

1. 了解聚类的基本概念 聚类是一种将数据集分组的无监督学习方法&#xff0c;目标是使得同一组内的数据点相似度较高&#xff0c;不同组之间的数据点相似度较低。 2. K均值聚类算法简介 K均值聚类是一种迭代算法&#xff0c;通过将数据分成K个簇来最小化簇内数据点到簇中心的…

【java】数学运算考试系统

目录 一、登录界面&#xff1a; 二、管理员界面&#xff1a; 三、学生考试界面&#xff1a; 面向小学低年级学生&#xff0c;随机生成两个整数的加减法算式要求学生解答。要求有用 户登录、注册等 GUI 界面&#xff0c;用户数据存入文件&#xff0c;体现面向对象编程思想。 …

推荐系统三十六式学习笔记:原理篇.矩阵分解12|如果关注排序效果,那么这个模型可以帮到你

目录 矩阵分解的不足贝叶斯个性化排序AUC构造样本目标函数训练方法 总结 矩阵分解在推荐系统中的地位非常崇高。它既有协同过滤的血统&#xff0c;又有机器学习的基因&#xff0c;可以说是非常优秀了&#xff1b;但即便如此&#xff0c;传统的矩阵分解无论是在处理显式反馈&…

Python学习打卡:day11

day11 笔记来源于&#xff1a;黑马程序员python教程&#xff0c;8天python从入门到精通&#xff0c;学python看这套就够了 目录 day1183、自定义 Python 包创建包导入包方式1方式2方式3方式4 84、安装第三方包安装第三方包——pippip的网络优化 安装第三方包——PyCharm 85、…

LeetCode 2748.美丽下标对的数目:模拟

【LetMeFly】2748.美丽下标对的数目&#xff1a;模拟 力扣题目链接&#xff1a;https://leetcode.cn/problems/number-of-beautiful-pairs/ 给你一个下标从 0 开始的整数数组 nums 。如果下标对 i、j 满足 0 ≤ i < j < nums.length &#xff0c;如果 nums[i] 的 第一个…

获取真实IP总结

CDN&#xff1a;通过不同地理位置的缓存来加快访问速度&#xff0c;所以我们有可能访问的网口不是真实ip提供的网口。 思路&#xff1a; CDN是要钱的 CDN是基于静态解析的 1、DNS历史记录 找最早的那一条 因为网站刚开始搭建起来的时候&#xff0c;不会直接使用CDN 以下⼏个⽹…

Exposure X7软件安装包下载 丨不限速下载丨亲测好用

根据使用者情况表明Exposure的设计鼓励您进行创造性的工作&#xff0c;使用涂刷和遮罩工具将效果有选择地应用于图片的特定区域&#xff0c;非破坏性图层使您能够混合预设和调整&#xff0c;以获得无尽的外观。我们都知道Exposure是用于创意照片编辑的最佳图片编辑器&#xff0…

Ruby on Rails Post项目设置网站初始界面

在构建了Ruby的Web服务器后&#xff0c;第三步就可以去掉框架的官方页面&#xff0c;设置自己的网页初始页了。 Linux系统安装Ruby语言-CSDN博客 、在Ubuntu中创建Ruby on Rails项目并搭建数据库-CSDN博客、 Ruby语言建立Web服务器-CSDN博客 了解Ruby onRails项目中的主要文件…

OceanBase v4.2 特性解析:支持并发建表,提升OMS导入效率

背景 OceanBase 4.0版本新增了单日志流架构&#xff0c;使得OBServer单机突破了原有的分区数限制&#xff0c;支持更大数量的分区。 很多业务环境为了处理单机数据量过大的问题&#xff0c;通常采取分库分表的方法&#xff0c;这一方法会导致业务需要创建数十万乃至百万级别的…

贪吃蛇——c语言版

文章目录 演示效果实现的基本功能技术要点源代码实现功能GameStart打印欢迎界面和功能介绍绘制地图创建蛇创建食物 GameRun打印提示信息蛇每走一步 GameEnd蛇死亡后继续游戏 演示效果 贪吃蛇1.0演示视频 将终端应用程序改为控制台主机 实现的基本功能 贪吃蛇地图绘制蛇吃食物的…

服务器接收苹果订阅通知

我们的服务器需要提供一个URL来接收苹果的通知&#xff0c;要使用HTTPS。 苹果会对这个URL发送HTTP POST请求&#xff0c;body是JSON格式&#xff0c;包含了通知的内容。 我们服务器处理成功后&#xff0c;应向苹果返回HTTP 200。若出现问题&#xff0c;需要苹果重新发送通知…