R语言 如何创建雷达图
在这篇文章中,我们将看到如何 在R编程语言中 创建 雷达图
雷达图也被称为蜘蛛图或网络图或极地图。它是一种显示多变量数据的图形,由三个或更多定量变量的二维图表组成,这些变量在轴上从同一点开始表示。
使用中的数据集
Mumbai Tamil Noida Kerala Patna Assam Ranchi Bhopal Delhi Indore
1 39 39 39 39 39 39 39 39 39 39
2 0 0 0 0 0 0 0 0 0 0
3 2 7 5 5 9 18 7 7 10 19
fmsb包是几个实用函数,它有radarchar()方法,可以在R中创建雷达图。
要安装该包 。
install.packages( fmsb )
在R中创建一个基本的雷达图
这里我们将使用radarchart()方法显示基本的雷达图。为此,我们将传递创建的数据框架。
语法: radarchart(df, cglty, cglcol, cglwd, pcol, plwd)
参数。
- df是一个数据框架
- pcol属性用于改变多边形线的颜色。
- plwd属性用于增加或减少多边形的线宽。
- cglcol用于绘制网的颜色。
- cglwd是用于网的宽度
例子: 基本雷达图
data <- as.data.frame(matrix( sample( 2:20 , 10 ,
replace=T) ,
ncol=10))
colnames(data) <- c("Mumbai" , "Tamil" , "Noida" ,
"Kerala" , "Patna", "Assam" ,
"Ranchi" , "Bhopal", "Delhi",
"Indore" )
data <- rbind(rep(39,10) , rep(0,10) , data)
# Library
library(fmsb)
# The default radar chart
radarchart(data)
输出 。
线条颜色 定制
pcol 属性用于改变多边形线条的颜色。
例子: 线的颜色定制
data <- as.data.frame(matrix( sample( 2:20 , 10 ,
replace=T) ,
ncol=10))
colnames(data) <- c("Mumbai" , "Tamil" , "Noida" ,
"Kerala" , "Patna", "Assam" ,
"Ranchi" , "Bhopal", "Delhi",
"Indore" )
data <- rbind(rep(39,10) , rep(0,10) , data)
radarchart(data, pcol = "Green")
输出 。
将 颜色填充到 多边形 中
pfcol 属性用于填充多边形的颜色。
例子: 填充颜色
data <- as.data.frame(matrix( sample( 2:20 , 10 ,
replace=T) ,
ncol=10))
colnames(data) <- c("Mumbai" , "Tamil" , "Noida" ,
"Kerala" , "Patna", "Assam" ,
"Ranchi" , "Bhopal", "Delhi",
"Indore" )
data <- rbind(rep(39,10) , rep(0,10) , data)
# Library
library(fmsb)
radarchart(data, pfcol = "Green")
输出 。
改变 线宽
plwd 属性用于增加或减少多边形的线宽。
例子: 改变线宽
data <- as.data.frame(matrix( sample( 2:20 , 10 ,
replace=T) ,
ncol=10))
colnames(data) <- c("Mumbai" , "Tamil" , "Noida" ,
"Kerala" , "Patna", "Assam" ,
"Ranchi" , "Bhopal", "Delhi",
"Indore" )
data <- rbind(rep(39,10) , rep(0,10) , data)
# Library
library(fmsb)
radarchart(data, plwd = 3)
输出 。
雷达图中的网格特征
以下是用于网格的属性 。
- cglcol用于绘制网的颜色
- cglty用于获取网线类型
- axislabcol用于绘制轴标签的颜色
- caxislabels是用于显示轴标签的矢量。
- cglwd表示网的宽度
示例: 网格特征
data <- as.data.frame(matrix( sample( 2:20 , 10 ,
replace=T) ,
ncol=10))
colnames(data) <- c("Mumbai" , "Tamil" , "Noida" ,
"Kerala" , "Patna", "Assam" ,
"Ranchi" , "Bhopal", "Delhi",
"Indore" )
data <- rbind(rep(39,10) , rep(0,10) , data)
# Library
library(fmsb)
radarchart(data,
cglcol="Blue", cglty=10, axislabcol="grey",
caxislabels=seq(0,20,5), cglwd=0.8)
输出 。