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

R 语言科研绘图第 13 期 --- 柱状图-堆叠

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

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

R 语言科研绘图模板 --- sciRploticon-default.png?t=O83Ahttps://mp.weixin.qq.com/s/QA_8LVqjkdg4A16zLonw4w?payreadticket=HPEMtkuhy8w6F2yra3tAPpJ2IT62-zggf6gukodwbjonkMuNN1llwQxktrDIYi4SMKlVDyE

本期绘图预览:

图片

1. 导入包

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

library(ggplot2)

2. 准备数据

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

data <- sciRplot_data

3. 准备配色

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

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

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

R 语言科研配色工具 --- sciRcoloricon-default.png?t=O83Ahttps://mp.weixin.qq.com/s/XZol4VxvHnJD_49ij3f2mg?payreadticket=HPDxoGnXRhyk5clty8VTcGlhLNiJ3G_AgJJtzNE0dvVkQktJ5sfvdAFXz2O-DNIS9vmir6A

4. 绘制图形

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

p <-   ggplot(data, aes(x=Date, y=Value, color=Type, fill=Type)) +  geom_bar(position = "stack", stat = "identity", width = 0.7) +  geom_text(aes(label=Value), size=6, position = position_stack(vjust = 0.5),            color="black") +  scale_y_continuous(breaks=seq(0,1000,200), limits = c(0,1000),                     expand = expansion(mult = c(0, 0.05))) +  theme_classic(base_size = 25) +  theme(panel.grid.major.y = element_line(),        legend.position = "top") +  scale_fill_manual(values = colors) +  scale_color_manual(values = colors)p

5. 保存图形

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

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

sciRplot 介绍

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

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

图片

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

图片


http://www.kler.cn/a/467479.html

相关文章:

  • 服务器数据恢复—离线盘数超过热备盘数导致raidz阵列崩溃的数据恢复
  • Echart实现3D饼图示例
  • 微信小程序Uniapp
  • 数据挖掘——集成学习
  • 模型 九屏幕分析法
  • vue3+Echarts+ts实现甘特图
  • 使用 TensorFlow 打造企业智能数据分析平台
  • 【Leetcode】732. 我的日程安排表 III
  • Qlib量化回测安装以及使用
  • TIM的中断
  • 通往O1开源之路
  • 基于Spring Boot智能无人仓库管理系统【附源码】
  • PADS Logic原理图中有很多页原理图,如何(怎样)删除其中一页或者多页
  • Linux之ARM(MX6U)裸机篇----8.主频和时钟配置实验
  • AWS EMR基础知识
  • 【ArcGISPro/GeoScenePro】裁剪和打包栅格数据
  • 1、数据结构之:树的相关定义和二叉树
  • Java接入阿里云日志服务
  • JAVA构造方法练习
  • 光伏安装在屋顶:安全、环保还是潜在威胁?
  • ithewei的2024年度总结
  • VB.NET CRC32 校验
  • 智能工厂的设计软件 应用场景的一个例子: 为AI聊天工具添加一个知识系统 之19 再次重建 之5 项目文件三大部
  • 《learn_the_architecture_-_generic_interrupt_controller_v3_and_v4__lpisn》学习笔记
  • 内部类 --- (寄生的哲学)
  • MQ消息队列