R语言的ggplot2绘制分组折线图?

R绘制分组折线图.R

首先看数据情况:group有3组。Time有3组,数据意思是在3组3个时间点测量了某指标,现在要绘制组1、组2、组3某指标y按时间的变化趋势

数据情况:

看看最终的效果图如下:

下面是本次使用的代码

.libPaths ()

setwd ("C:/Users/12974/Desktop/百度经验/03图形绘制/03R绘制分组折线图")#设置工作空间
getwd ()#加载工作空间

##导入数据
data1<-read.csv ("C:/Users/12974/Desktop/百度经验/03图形绘制/03R绘制分组折线图/data.csv",

as.is = TRUE,header = T,sep = ",", fileEncoding='utf-8')

#加载包
library (ggplot2)
library (ggsci)#画图颜色的包
#处理数据,将分类变量变为分类的
data1**** group\<-**as.factor** (data1**** group)
p1<-ggplot (data = data1,

aes (x=时间, #x轴变量

y=y, #y轴变量

group=group, #分组变量

color=group))+

geom_point (size=2)+

geom_line (size=1)

#美化
p1<-p1**+**

labs (x="时间",y="均值")+ #坐标名称

scale_fill_lancet ()+ #表示用lancet里面的颜色随机填充线条

scale_color_lancet ()+ #表示用lancet里面的颜色随机填充线条

theme_bw ()+ #去掉背景灰色

theme (panel.grid = element_blank ())+ #删除背景网格

scale_color_manual (

values = c ("1" = "#bd2628",

"2" = "#B09C85FF",

"3" = "#4DBBD5FF"))

p1

#另外还可以选择组1、组2、组3其中两组作图
library (dplyr)#这个包加载了才能用下面的函数

#筛选group=1和group=2
data12<- data1 %>%

filter (group %in% c ("1", "2"))
#筛选group=1和group=3
data13<- data1 %>%

filter (group %in% c ("1", "3"))
#筛选group=2和group=3
data23<- data1 %>%

filter (group %in% c ("2", "3"))

#绘制group=1和group=2
p12<-ggplot (data = data12,

aes (x=时间, #x轴变量

y=y, #y轴变量

group=group, #分组变量

color=group))+

geom_point (size=2)+

geom_line (size=1)
#美化
p12<-p12**+**

labs (x="时间",y="均值")+ #坐标名称

scale_fill_lancet ()+ #表示用lancet里面的颜色随机填充线条

scale_color_lancet ()+ #表示用lancet里面的颜色随机填充线条

theme_bw ()+ #去掉背景灰色

theme (panel.grid = element_blank ())+ #删除背景网格

scale_color_manual (

values = c ("1" = "#bd2628",

"2" = "#B09C85FF",

"3" = "#4DBBD5FF"))

p12

#绘制group=1和group=3
p13<-ggplot (data = data13,

aes (x=时间, #x轴变量

y=y, #y轴变量

group=group, #分组变量

color=group))+

geom_point (size=2)+

geom_line (size=1)
#美化
p13<-p13**+**

labs (x="时间",y="均值")+ #坐标名称

scale_fill_lancet ()+ #表示用lancet里面的颜色随机填充线条

scale_color_lancet ()+ #表示用lancet里面的颜色随机填充线条

theme_bw ()+ #去掉背景灰色

theme (panel.grid = element_blank ())+ #删除背景网格

scale_color_manual (

values = c ("1" = "#bd2628",

"2" = "#B09C85FF",

"3" = "#4DBBD5FF"))

Scale for colour is already present.

Adding another scale for colour, which will replace the existing scale.

p13

#绘制group=2和group=3
p23<-ggplot (data = data23,

aes (x=时间, #x轴变量

y=y, #y轴变量

group=group, #分组变量

color=group))+

geom_point (size=2)+

geom_line (size=1)
#美化
p23<-p23**+**

labs (x="时间",y="均值")+ #坐标名称

scale_fill_lancet ()+ #表示用lancet里面的颜色随机填充线条

scale_color_lancet ()+ #表示用lancet里面的颜色随机填充线条

theme_bw ()+ #去掉背景灰色

theme (panel.grid = element_blank ())+ #删除背景网格

scale_color_manual (

values = c ("1" = "#bd2628",

"2" = "#B09C85FF",

"3" = "#4DBBD5FF"))

p23

##保存图片
ggsave (filename = "p1.png",#命名

plot=p1,#哪张图

units="px",

width = 1200,#宽度

height = 600 #高度
)

ggsave (filename = "p12.png",#命名

plot=p12,#哪张图

units="px",

width = 1200,#宽度

height = 600 #高度
)

ggsave (filename = "p13.png",#命名

plot=p13,#哪张图

units="px",

width = 1200,#宽度

height = 600 #高度
)

ggsave (filename = "p23.png",#命名

plot=p23,#哪张图

units="px",

width = 1200,#宽度

height = 600 #高度
)

相关推荐
知识分享小能手17 小时前
R语言入门学习教程,从入门到精通,R语言数值关系数据可视化 - 完整知识点(5)
学习·信息可视化·r语言
生信碱移1 天前
PACells:这个方法可以鉴定疾病/预后相关的重要细胞亚群,作者提供的代码流程可以学习起来了,甚至兼容转录组与 ATAC 两种数据类型!
人工智能·学习·算法·机器学习·数据挖掘·数据分析·r语言
知识分享小能手1 天前
R语言入门学习教程,从入门到精通,R语言类别比较数据可视化- 完整知识点与案例代码(4)
学习·信息可视化·r语言
星座5282 天前
掌握双碳核心工具,从产品碳足迹到气候变化响应:基于OpenLCA、GREET、R语言的生命周期评价方法、模型构建及典型案例应用
r语言·生命周期·openlca·greet
知识分享小能手3 天前
R语言入门学习教程,从入门到精通,R语言网格绘图系统(ggplot2)- 完整知识点与案例代码(3)
开发语言·学习·r语言
做cv的小昊3 天前
【TJU】研究生应用统计学课程笔记(5)——第二章 参数估计(2.3 C-R不等式)
c语言·笔记·线性代数·机器学习·数学建模·r语言·概率论
hhb_6184 天前
R语言数据分析与可视化实战指南
开发语言·数据分析·r语言
知识分享小能手4 天前
R语言入门学习教程,从入门到精通,R语言传统绘图系统 - 完整知识点与案例代码(2)
开发语言·学习·r语言
笑不语5 天前
从共病网络到可解释 AI:同济医院 10 分 SCI 全流程复现(R 语言)
开发语言·人工智能·r语言
知识分享小能手5 天前
R语言入门学习教程,从入门到精通,R语言基础 - 完整知识点与案例代码(1)
开发语言·学习·r语言