当前位置: 首页 > news >正文

R 语言科研绘图第 64 期 --- 哑铃图

在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。

为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式:

R 语言科研绘图模板 --- sciRplot https://mp.weixin.qq.com/s/QA_8LVqjkdg4A16zLonw4w?payreadticket=HFLOAncGRDz6yRsCTNzc-Kcm3G1KwIbFQ7EvHuhwg_HxWTCq_umJlitFrq5vaHBVSx0N6-o

本期绘图预览:

 

 

 

1. 导入包

我们首先导入本期绘图用到的 R 包:

library(ggplot2)

2. 准备数据

 

接下来我们导入绘图用到的数据,在 sciRplot 中给大家提供了测试数据:

data <- sciRplot_data

查看下数据格式:

 

3. 准备配色

 

颜色的选择往往是一件让人特别纠结的事情,这里我们直接使用 sciRcolor 来设置配色:

colors <- sciRcolor::pal_scircolor(37)[1:2]

sciRcolor 是为了 R 语言科研绘图开发的配色工具,包含了 100 种常用配色,详细信息见:

 

R 语言科研配色工具 --- sciRcolor https://mp.weixin.qq.com/s/XZol4VxvHnJD_49ij3f2mg?payreadticket=HLlkm7ZxA2IS8TE108ehxgrBVVdQR74HBdZEk1Oqe3VfQFVKUqQ7AqabZ96nf8z6rWSyqd0

4. 绘制图形

 

接下来我们通过下面的代码来绘制图形:

p <-   ggplot(data, aes(x=x,y=y)) +  geom_segment(aes(x=x, xend=x, y=y1, yend=y2), color="#C9CACA", size=3) +  geom_point(aes(x=x, y=y1), color=colors[1], size=10) +  geom_point(aes(x=x, y=y2), color=colors[2], size=10) +  labs(x="X", y="Y", title="") +  scale_y_continuous(breaks=seq(0,50,10), limits = c(0,50),                     expand = expansion(mult = c(0, 0.05))) +  theme_classic(base_size = 25) +   theme(panel.grid.major.y = element_line())p

5. 保存图形

 

最后我们保存绘制的图形:

ggsave("save/dumbbell-plot.png", p, width = 8, height = 6, dpi = 300)

 

 

sciRplot 介绍

为了解决 R 语言中科研绘图的问题,我推出了 sciRplot 项目。sciRplot 项目包含了以下内容:

① 100 种绘图代码,按照图形类型进行分类,包含 60 种基础绘图和 40 种进阶绘图

 

 

② 配备一站式 html文档,包含测试数据,代码一键复制交互式阅读提高用户体验

 

 

http://www.lryc.cn/news/587871.html

相关文章:

  • 当前(2024-07-14)视频插帧(VFI)方向的 SOTA 基本被三篇顶会工作占据,按“精度-速度-感知质量”三条线总结如下,供你快速定位最新范式
  • 设计模式》》门面模式 适配器模式 区别
  • js与vue基础学习
  • Linux 基础命令详解:从入门到实践(1)
  • 基于Hadoop的竞赛网站日志数据分析与可视化(上)
  • STM32介绍和GPIO
  • Spring Boot启动原理:从main方法到内嵌Tomcat的全过程
  • Datawhale AI夏令营-基于带货视频评论的用户洞察挑战赛
  • [Python] -实用技巧4-Python中浅拷贝与深拷贝的区别详解
  • 工业软件加密锁复制:一场技术与安全的博弈
  • 借助DeepSeek编写输出漂亮表格的chdb客户端
  • 终端安全最佳实践
  • IIS错误:Service Unavailable HTTP Error 503. The service is unavailable.
  • SpringAi笔记
  • OpenCV 视频处理与摄像头操作详解
  • MySQL Innodb Cluster配置
  • 【CV综合实战】基于深度学习的工业压力表智能检测与读数系统【3】使用OpenCV读取分割后的压力表读数
  • DiffDet4SAR——首次将扩散模型用于SAR图像目标检测,来自2024 GRSL(ESI高被引1%论文)
  • vue-v-model进阶-ref-nextTick
  • 网络安全核心定律
  • 5G 到 6G通信技术的革新在哪里?
  • libimagequant windows 编译
  • 基于Python的就业数据获取与分析预测系统的设计与实现
  • Boost.Asio 异步写:为什么多次 async_write_some 会导致乱序,以及如何解决
  • 机器学习中的朴素贝叶斯(Naive Bayes)模型
  • 微软发布BioEmu模型
  • Web3:Foundry使用指南
  • 银河麒麟KYSEC安全机制详解
  • 《C++初阶之STL》【泛型编程 + STL简介】
  • 宝塔面板常见问题