首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >R06-R语言作图

R06-R语言作图

原创
作者头像
坚不可崔同学
发布于 2024-06-15 06:23:55
发布于 2024-06-15 06:23:55
2230
举报
文章被收录于专栏:R语言系列R语言系列

画图的目的是为了展示数据

常用可视化R包和函数

作图的三类

1.基础包-绘图函数

实例

plot(iris ,1 ,iris,3,col = iris,5) text(6.5,4, labels = 'hello')

2.ggplot2

library(ggplot2)

ggplot(data = iris)+

geom_point(mapping = aes(x = Sepal.Length, y = Petal.Length,color = Species))

2.1 入门级绘图模板

ggplot(data = <DATA>)+<GEOM_FUNCTION>(mapping = aes(<MAPPINGS>)

ggplot(data = iris)+geom_point(mapping = aes(x = Sepal.Length, y = Petal.Length))

ggplot2的特殊语法:列名不带引号,行末写加号

2.2属性设置(颜色、大小、透明度、点的形状、线型等)

2.2.1 手动设置

ggplot(data = iris) +

geom_point(mapping = aes(x = Sepal.Length, y = Petal.Length),

size = 5, # 点的大小5mm

alpha = 0.5, # 透明度 50%

shape = 8) # 点的形状

2.2.2映射:按照数据框的某一列来定义图的某个属性

ggplot(data = iris)+

geom_point(mapping = aes(

x = Sepal.Length,

y = Petal.Length,

color = Species))

映射:根据数据的某一列的内容分配颜色

手动设置:把图形设置为一个或n个颜色,与数据内容无关

Q:能否自行指定映射的具体颜色

ggplot(data = iris)+

geom_point(mapping = aes(

x = Sepal.Length,

y = Petal.Length,

color = Species))+

scale_color_manual(values = c("blue","grey","red"))

ggplot(data = iris)+

geom_point(mapping = aes(

x = Sepal.Length,

y = Petal.Length,

color = Species))+

scale_color_brewer(palette = "Set1")

Q2:区分color和fill两个属性

Q2-1 空心形状和实心形状都用color设置颜色

ggplot(data = iris)+

geom_point(mapping = aes(

x = Sepal.Length,

y = Petal.Length,

color = Species),

shape = 17) #17号,实心的例子

ggplot(data = iris)+

geom_point(mapping = aes(

x = Sepal.Length,

y = Petal.Length,

color = Species),

shape = 2) #2号,空心的例子

Q2-2 既有边框又有内心的,才需要color和fill两个参数

ggplot(data = iris)+

geom_point(mapping = aes(

x = Sepal.Length,

y = Petal.Length,

color = Species),

shape = 24,

color="red",

fill = "yellow") #24号,双色的例子

2.3几何对象

几何对象可以叠加

方法一

ggplot(data = iris) +

geom_smooth(mapping = aes(x = Sepal.Length, y = Petal.Length))+

geom_point(mapping = aes(x = Sepal.Length, y = Petal.Length))

方法二

ggplot(data = iris,mapping = aes(x = Sepal.Length, y = Petal.Length))+

geom_smooth()+

geom_point()#简版写法

ggplot2.4位置

ggplot(data = iris,mapping = aes(x = Species,

y = Sepal.Width,

fill = Species)) +

geom_boxplot()+

geom_point()

作图后,点与点发生重叠
作图后,点与点发生重叠

ggplot(data = iris,mapping = aes(x = Species,

y = Sepal.Width,

fill = Species)) +

geom_boxplot()+

geom_jitter()

#geom_point(position = "jitter")

geom_jitter()后坐标系中的点散开
geom_jitter()后坐标系中的点散开

ggplot2.5坐标系

ggplot(data = iris,mapping = aes(x = Species,

y = Sepal.Width,

fill = Species)) +

geom_boxplot()+

geom_jitter()+

coord_flip()

横纵坐标互换翻转
横纵坐标互换翻转

theme_bw()

去掉灰色格子
去掉灰色格子

ggplot语法总结

图层的叠放顺序先写现放

3.ggpubr #新手友好型 ggplot2简化和美化 褒贬不一

library(ggpubr)

ggscatter(iris,x="Sepal.Length", y="Petal.Length",color="Species")

ggpubr

library(ggpubr)

p = ggboxplot(iris, x = "Species", y = "Sepal.Length",

color = "Species", shape = "Species",add = "jitter")

p

ggpubr可以实现组间比较

>my_comparisons <- list( c("setosa", "versicolor"),

c("setosa", "virginica"),

c("versicolor", "virginica") )

>p + stat_compare_means(comparisons = my_comparisons,

aes(label = after_stat(p.signif)))

4.save_export.R

图片保存

ggplot2系列

ggsave("iris_box_ggpubr.png")

ggsave(p,filename="iris_box_ggpubr2.png")

通用:三段论

保存的函数及文件名 pdf("test.pdf")

作图代码 ...........

画完了,关闭画板 dev.off( )

ggsave系列保存

p <- ggboxplot(iris, x = "Species",

y = "Sepal.Length",

color = "Species",

shape = "Species",

add = "jitter")

ggsave(p,filename = "iris_box_ggpubr.png")

eoffice包 导出为ppt,全部元素都是可编辑模式

library(eoffice)

topptx(p,"iris_box_ggpubr.pptx")

画图的正确思维

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
R语言 基础作图
*ggplot2中通过不同的geom函数生成图层,从前往后覆盖,因此需要考虑函数书写的顺序
Magnolia
2023/01/06
1.6K0
生信马拉松 Day6
开头一个小tips:在运行R project时,界面上最好每次只有一个脚本,否则不同脚本之间流程、变量容易混乱
阿呆的月历
2024/01/15
3190
R语言作图基础20230206
ps:高级绘图函数是指可以绘制出一张图,而低价绘图函数是指在图中添加的“零部件”,低级绘图函数必须在高级绘图函数的基础上才能绘制,二者都是base包的内容
顾卿岚
2023/02/08
1.7K0
跟小洁老师学习R语言的第六天
图片 图片 常用可视化R包 作图 base ggplot2(特殊语法:列名不带引号,行末写加号) 图片 颜色:color 大小:size 形状:shape 图片 透明度:alpha 填充颜色:fill(既有边框又有内心的,才需要color和fill两个参数) 映射和手动设置的区别 图片 自行指定映射的具体颜色 ggplot(data = iris)+ geom_point(mapping = aes(x = Sepal.Length, y = Pe
贝诺酯
2023/03/16
5950
R学习 作图
guacamole
2024/03/12
2180
十一、画图(ggplot2、ggpubr)及图片保存
Q1 :能不能自行指定映射的具体颜色? 想要自行指定映射的颜色,就必须要有映射。
叮当猫DDM
2023/02/09
2.5K0
R语言基础5(绘图基础)
str_detect(x,"h")##是否含有关键词h,生成与X长度相等的逻辑值向量,可用于向量取子集;
Erics blog
2023/09/19
5710
第六课
---title: "class6.1"author: "xiaowang"date: "2023-04-18"output: html_document---R语言作图与绘图相关的R包的安装options("repos"=c(CRAN="http://mirrors.tuna.tsinghua.edu.cn/CRAN/"))#R包的安装if(!require(ggplot2))install.packages('ggplot2',update = F,ask = F)if(!require(ggpubr)
小王同学@生信
2023/04/18
2010
第六课
生信技能树学习笔记-day6
---title: "生信技能树学习笔记"author: "天空"引用自生信技能树date: "2023-01-04"output: html_document---R语言作图1. 常用可视化R包图片2. R基础包、ggplot2和ggpubr之间的绘图差别图片图片#作图分三类#1.基础包 略显陈旧 了解一下plot(iris[,1],iris[,3],col = iris[,5]) text(6.5,4, labels = 'hello')图片# dev.off() #关闭画板#2.ggplot2 中坚力
天空UP
2023/01/04
6270
2023.4生信马拉松day6-绘图
base包、ggplot2、ggpubr(ggpubr对ggplot2进行了简化和美化,适用于新手入门,可操作空间较小)
清南
2023/04/17
1.3K0
R语言作图
作图baseggplot2 ★ggpubr拼图par里的mfrowgrid.arrange cowplotcustomLayoutpatchwork ★导出经典三段论ggsave ★(属于ggplot2,可以存储)eoffice (可以导出为ppt)ggplot2语法入门级绘图模板ggplot(data=<DATA>)+ <GEOM_FUNCTION>(mapping=aes(<MAPPINGS>)) #ggplot() 括号里面是数据 例如 ggplot(data=iris)+ geom_po
大胖橘
2023/03/14
1.8K0
生信入门马拉松之R语言基础- R语言作图(Day 6)
重启session(重新打开RStudio、重启R,打开新的session)时需要重新加载R包
Crazy_George
2024/04/16
3860
R语言基础笔记-03(ggplot2)
<GEOM_FUNCTION>(mapping =aes(<MAPPINGS>))
我不知道
2023/03/14
9820
R语言学习笔记-Day5
拼图:par里的mfrow, grid.arrange, cowplot, patchwork
用户11190095
2024/07/07
3660
技能树Day03_直播课05-06_R作图与综合利用
属性设置:映射:根据数据的某一列的内容分配颜色;统一设置:把图形设置为一个颜色,与数据无关
sheldor没耳朵
2024/07/19
1700
技能树Day03_直播课05-06_R作图与综合利用
生信技能树-R语言-day6
> plot(iris[,1],iris[,3],col = iris[,5]) # 横坐标是iris的第一列,纵坐标是第三列,以第五列的颜色分类 > text(6.5,4, labels = 'hello')# 6.5 和4 是文字的坐标
VOHOKO
2024/04/19
1390
生信技能树R语言学习直播配套笔记
1.1 判断数据类型class() 1.2 按Tab键自动补全1.3 数据类型的判断和转换 (1)is 族函数,判断,返回值为TRUE或FALSE
生信技能树
2022/06/08
1.2K0
生信技能树R语言学习直播配套笔记
biotrainee note 5
季枫
2024/11/12
720
R03 绘图
aes()函数是ggplot2包中一个重要的函数,它用于将变量映射到图形属性上,如颜色、形状、大小、位置等。它的主要功能包括以下三个方面:
大豆虫
2023/03/16
1.3K0
R语言-画图
dev.off() #关闭画板,报错也没问题,如果多次运行也不出图就dev.new()
yurric
2023/02/07
9220
相关推荐
R语言 基础作图
更多 >
LV.0
这个人很懒,什么都没有留下~
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档