R 语言科研绘图第 30 期 --- 密度图-堆叠

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

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

R 语言科研绘图模板 --- sciRplothttps://mp.weixin.qq.com/s/QA_8LVqjkdg4A16zLonw4w?payreadticket=HAz9b4jHywwlygj4vakec5PXFDIs_2lzjqBaOXy_hoAvdWRi_OVYSWRYkbdTbkL7GTclX0Q

本期绘图预览:

1. 导入包

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

复制代码
library(ggplot2)

2. 准备数据

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

复制代码
data <- sciRplot_data

3. 准备配色

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

复制代码
colors <- sciRcolor::pal_scircolor(37)[1:4]

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

R 语言科研配色工具 --- sciRcolorhttps://mp.weixin.qq.com/s/XZol4VxvHnJD_49ij3f2mg?payreadticket=HErT1yho-8sOoYf3n7UBVvx37ALiry5LgthtRsmzolM0zj0U6yxznGQRXa5WrIIXpdQ4Eps

4. 绘制图形

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

复制代码
p <-   ggplot(data, aes(x = price, group = cut, fill = cut)) +  geom_density(adjust=1.5, position="fill") +  labs(x="Value", y="Density") +  guides(fill=guide_legend("Type")) +  theme_classic(base_size = 25) +  theme(panel.grid.major.y = element_line(), legend.position = "top",        legend.key.size = unit(24,"pt")) +  scale_fill_manual(values = rev(colors))p

5. 保存图形

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

复制代码
ggsave("save/density-stack.png", p, width = 8, height = 6, dpi = 300)

sciRplot 介绍

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

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

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

相关推荐
少控科技2 分钟前
QT第6个程序 - 网页内容摘取
开发语言·qt
darkb1rd2 分钟前
八、PHP SAPI与运行环境差异
开发语言·网络安全·php·webshell
历程里程碑5 分钟前
Linux20 : IO
linux·c语言·开发语言·数据结构·c++·算法
郝学胜-神的一滴7 分钟前
深入浅出:使用Linux系统函数构建高性能TCP服务器
linux·服务器·开发语言·网络·c++·tcp/ip·程序人生
承渊政道11 分钟前
Linux系统学习【Linux系统的进度条实现、版本控制器git和调试器gdb介绍】
linux·开发语言·笔记·git·学习·gitee
JQLvopkk35 分钟前
C# 轻量级工业温湿度监控系统(含数据库与源码)
开发语言·数据库·c#
玄同7651 小时前
从 0 到 1:用 Python 开发 MCP 工具,让 AI 智能体拥有 “超能力”
开发语言·人工智能·python·agent·ai编程·mcp·trae
czy87874751 小时前
深入了解 C++ 中的 `std::bind` 函数
开发语言·c++
消失的旧时光-19431 小时前
从 Kotlin 到 Dart:为什么 sealed 是处理「多种返回结果」的最佳方式?
android·开发语言·flutter·架构·kotlin·sealed
yq1982043011561 小时前
静思书屋:基于Java Web技术栈构建高性能图书信息平台实践
java·开发语言·前端