雷达图通常在财务报表分析中使用较多,当前在描述性统计分析中,雷达图正在被越来越多的人使用。
本文利用R语言 ggplot2 的一款扩展主题包——ggradar 包从头开始绘制简单漂亮的雷达图。
一 加载函数包
ggradar包需要通过 github 来安装,安装方法如下:
devtools::install_github("ricardo-bion/ggradar", dependencies=TRUE)
library(ggradar)
二 创建数据集绘制雷达图
2.1 设定种子,构造了一个区间为0~1,个数为24的4行6列随机数矩阵
set.seed(123)
mydata<-matrix(runif(24,0,1),4,6)
rownames(mydata) <- LETTERS[1:4]
colnames(mydata) <- c("Apple","Google","Amozon","Tencent","Alibaba","Baidu")#使用以上文本向量为矩阵列命名,方便展示
mynewdata<-data.frame(mydata)
Name<-c("USA","CHN","UK","RUS")
mynewdata<-data.frame(Name,mynewdata)
2.2 绘制USA的雷达图
ggradar(mynewdata[1,],grid.line.width = 0.5)
2.3 绘制所有变量的雷达图
ggradar(mynewdata)
三 使用car数据集展示雷达图
利用内置car数据集进行雷达图绘制,主要是对数据进行scale,然后绘制
library(ggradar)
library(scales)
library(tibble)
library(dplyr)
查看最后四种车型,在mpg ,cyl ,disp ,hp ,drat方面的“性能”情况
mtcars %>%rownames_to_column(var="group") %>%#保留行名称
mutate_at(vars(-group),funs(rescale)) %>%tail(4) %>%select(1:6) -> mtcars_radar
绘制雷达图,更改基本参数
ggradar(mtcars_radar, grid.line.width =0.5,axis.label.size=5,group.line.width =1,group.point.size =2)
四 ggradar主要的函数功能
ggradar(plot.data, axis.labels = colnames(plot.data)[-1], grid.min=0,grid.mid =0.5, grid.max=1, centre.y = grid.min- ((1/9) * (grid.max-grid.min)), plot.extent.x.sf =1, plot.extent.y.sf =1.2,x.centre.range =0.02* (grid.max- centre.y), label.centre.y =FALSE,grid.line.width =0.5, gridline.min.linetype ="longdash",gridline.mid.linetype ="longdash", gridline.max.linetype ="longdash",gridline.min.colour ="grey", gridline.mid.colour ="#007A87",gridline.max.colour ="grey", grid.label.size =7,gridline.label.offset = -0.1* (grid.max- centre.y),label.gridline.min=TRUE, axis.label.offset =1.15,axis.label.size =8, axis.line.colour ="grey", group.line.width =1.5,group.point.size =6, background.circle.colour ="#D7D6D1",background.circle.transparency =0.2, plot.legend =if(nrow(plot.data) >1)TRUEelseFALSE, legend.title ="", legend.text.size = grid.label.size)
五 参考资料
http://127.0.0.1:15296/library/ggradar/html/ggradar.html
找到各企业对于生信工程师的JD,然后根据R,Python,Linux,Bio Pipeline ,NGS 等的要求程度绘制雷达图,就可以直观的知道生信工程师相对更重要的是什么能力了,,,嘿嘿😁。。。
更多关于生信 ,R ,Python的内容请扫码关注小号,谢谢。