查看: 3633|回复: 38

[R语言] 看到我画的图表后,老板露出了笑容。。。

  [复制链接]

管理员

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

主题
461
注册时间
2020.6.16
在线时间
304 小时

发表于 2021.11.15 09:55:09 | 显示全部楼层 |阅读模式
雷达图,可视作将常规直角坐标系下折线图转成极坐标后的效果。常用于展示某一研究对象在多个维度的属性值或得分情况,也可用于展示不同样本、细胞亚群的基因表达量,或不同环境下微生物的丰度变化情况。


废话不多说,今天为大家分享一种好看雷达图的画法。
[AppleScript] 纯文本查看 复制代码
#安装ggradar和ggradar2;
devtools::install_github("ricardo-bion/ggradar",
dependencies = TRUE)
devtools::install_github("xl0418/ggradar2",dependencies=TRUE)
#载入ggradar等R包;
library(ggradar)
library(dplyr)
library(scales)
library(tibble)
#读入数据;
dt <- read.csv("radardata.csv",header = T)
#预览数据;
head(dt)



[AppleScript] 纯文本查看 复制代码
#提取感兴趣基因的表达量;
genes <- c("MYH11","COPA","ALB")
dt <- as_tibble(dt)
df <- filter(dt,gene %in% genes)
colnames(df)[1] <- "group"
#预览提取结果;
df



[AppleScript] 纯文本查看 复制代码
#确保第1列为分组数据,使用默认参数绘制雷达图;
ggradar(df)



[AppleScript] 纯文本查看 复制代码
#自定义配色方案;
mycolor <- c("#FF99CC","#99CC00","#c77cff")
#进一步指定grid.line和group.line的粗细、颜色、样式;
#使用 group.point.size指定结点的大小;
#使用values.radar、gridline.label.offset设置坐标轴的标签和位置;
#使用group.colours参数指定线的颜色;
p1 <- ggradar(df,values.radar = c("0", "0.5", "1"),
grid.line.width = 0.5,
group.line.width=1.5,
group.point.size=5,
grid.label.size=6,
axis.label.size = 5,
gridline.min.colour = "grey",
gridline.mid.colour = "orange",
gridline.max.colour = "grey",
gridline.min.linetype = "dashed",
gridline.mid.linetype = "longdash",
gridline.max.linetype = "longdash",
axis.line.colour = "grey",
group.colours=mycolor,
background.circle.colour="#D7D6D1",
background.circle.transparency=0.2,
gridline.label.offset=-0.05,
legend.position="right")
p1



比较遗憾的是ggradar只适合位于0~1之间的数据,应用范围有限,不能像Excel那样负数都可以!不过,还好ggradar2包可以!

[AppleScript] 纯文本查看 复制代码
#载入ggradar2包;
library(ggradar2)
#我们看看ggradar2的默认效果;
#ggradar2默认会查找“group”列;
ggradar2(df)



[AppleScript] 纯文本查看 复制代码
#由于ggradar2对数据范围没有限制,因此我们需要对每一列数据的最大值进行限定;
#注意:values.radar 参数在ggradar2中无法使用;
fullscore <- c(1,1,1,1,1,1)
ggradar2(df,fullscore = fullscore)



ggradar2在ggradar的基础上做了进一步的优化,比如可以设置多边形的填充颜色。

[AppleScript] 纯文本查看 复制代码
#使用group.fill.colours参数自定义填充色;
p2 <- ggradar2(df,polygonfill=T,
group.colours=mycolor,
polygonfill.transparency=0.2,
background.circle.transparency=0.0,
fullscore = fullscore)
p2



[AppleScript] 纯文本查看 复制代码
#除此之外,还可以修改“雷达”的形状为多边形;
p3 <- ggradar2(df,polygonfill=T,
group.colours=mycolor,
polygonfill.transparency=0.2,
background.circle.transparency=0.0,
radarshape= 'sharp',
fullscore = fullscore)
p3



[AppleScript] 纯文本查看 复制代码
#我们还可通过“webtype = 'lux'”参数将中间的网格线由3“圈”改为5“圈”;
p4 <- ggradar2(df,polygonfill=T,
group.colours=mycolor,
polygonfill.transparency=0.2,
background.circle.transparency=0.0,
radarshape= 'sharp',
webtype = 'lux',
grid.label.size=3,
fullscore = fullscore)
p4



[AppleScript] 纯文本查看 复制代码
#通过“centre.y”参数还可以设置中心圆的大小;
p5 <- ggradar2(df,polygonfill=T,
centre.y=0.05,
group.colours=mycolor,
polygonfill.transparency=0.2,
background.circle.transparency=0.0,
fullscore = fullscore)
p5



好啦,今天就先分享到这里啦,你学会了吗?

▼参考资料▼
https://github.com/xl0418/ggradar2

本文作者:基迪奥-莫北

               


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
新的一天加油!
回复

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
31
注册时间
2016.1.8
在线时间
556 小时

发表于 2021.11.15 11:08:53 | 显示全部楼层
好图当怒赞
新的一天加油!
回复 支持 反对

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
0
注册时间
2017.6.6
在线时间
148 小时

灌水之王


发表于 2021.11.15 20:34:10 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
0
注册时间
2017.6.6
在线时间
148 小时

灌水之王


发表于 2021.11.15 20:34:50 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
0
注册时间
2017.6.6
在线时间
148 小时

灌水之王


发表于 2021.11.15 21:20:38 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
0
注册时间
2020.11.21
在线时间
76 小时

发表于 2021.11.15 21:41:35 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
0
注册时间
2017.6.6
在线时间
148 小时

灌水之王


发表于 2021.11.15 21:48:41 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

功夫熊猫

Rank: 10Rank: 10Rank: 10

主题
3
注册时间
2017.9.8
在线时间
79 小时

发表于 2021.11.16 08:02:35 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

中华鲟

Rank: 5Rank: 5

主题
0
注册时间
2020.2.12
在线时间
81 小时

发表于 2021.11.16 09:18:46 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
0
注册时间
2020.11.21
在线时间
76 小时

发表于 2021.11.16 21:44:23 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

中华鲟

Rank: 5Rank: 5

主题
1
注册时间
2016.8.25
在线时间
92 小时

发表于 2021.11.16 23:23:01 | 显示全部楼层
配色好极了
新的一天加油!
回复 支持 反对

使用道具 举报

功夫熊猫

Rank: 10Rank: 10Rank: 10

主题
3
注册时间
2017.9.8
在线时间
79 小时

发表于 2021.11.17 08:07:52 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
0
注册时间
2017.6.6
在线时间
148 小时

灌水之王


发表于 2021.11.17 15:54:24 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

钵水母

Rank: 3Rank: 3

主题
0
注册时间
2019.5.11
在线时间
2 小时

发表于 2021.11.17 17:04:35 | 显示全部楼层
棒呆
好看新 好第几考场
回复

使用道具 举报

功夫熊猫

Rank: 10Rank: 10Rank: 10

主题
3
注册时间
2017.9.8
在线时间
79 小时

发表于 2021.11.18 08:08:31 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

版主

Rank: 10Rank: 10Rank: 10

主题
3
注册时间
2016.3.23
在线时间
243 小时

突出贡献优秀版主


发表于 2021.11.18 16:46:47 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

帝王蝶

Rank: 4

主题
0
注册时间
2021.6.22
在线时间
16 小时

发表于 2021.11.18 19:49:56 | 显示全部楼层
学习
回复

使用道具 举报

迅猛龙

Rank: 8Rank: 8

主题
0
注册时间
2020.11.21
在线时间
76 小时

发表于 2021.11.18 22:38:35 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

功夫熊猫

Rank: 10Rank: 10Rank: 10

主题
3
注册时间
2017.9.8
在线时间
79 小时

发表于 2021.11.19 08:28:30 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

功夫熊猫

Rank: 10Rank: 10Rank: 10

主题
3
注册时间
2017.9.8
在线时间
79 小时

发表于 2021.11.19 08:41:14 | 显示全部楼层
新的一天加油!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表