library("fmsb")
#最大、最小データの準備
maxmin <- data.frame(
total = c(5, 1),
phys = c(15, 3),
psycho = c(3, 0),
social = c(5, 1),
env = c(5, 1))
#描写データの準備
#RNGkind("Mersenne-Twister")
set.seed(123)
dat <- data.frame(
total = runif(3, 1, 5),
phys = rnorm(3, 10, 2),
psycho = c(0.5, NA, 3),
social = runif(3, 1, 5),
env = c(5, 2.5, 4))
dat <- rbind(maxmin, dat) #データの結合
dat
## total phys psycho social env
## 1 5.000000 15.000000 3.0 5.000000 5.0
## 2 1.000000 3.000000 0.0 1.000000 1.0
## 3 2.150310 12.380413 0.5 2.826459 5.0
## 4 4.153221 6.620889 NA 4.827333 2.5
## 5 2.635908 12.478992 3.0 2.813337 4.0
#ラベルの設定,データの行名を取得
VLabel <- colnames(dat)
####radarchartの設定#####
#centerzero = TRUEで中心が0
#axistype:軸基準設定,0:無し, 1:割合, 2:実数, 3:割合,実数, 4:最大を1, 5:最大を1,実数
#seg:分割数
#plty:線の種類
#vlcex:ラベルの大きさ
radarchart(dat, #データ
axistype = 2, #ラベルの表示方法(1-5から選択)
seg = 5, #各軸の区切り数
plty = 1, #ラインのタイプ
vlcex = 1,
centerzero = TRUE,
vlabels = VLabel,
title = "(axis=1, 5 segments, with specified vlabels)")
swiss[1:6,]
## Fertility Agriculture Examination Education Catholic
## Courtelary 80.2 17.0 15 12 9.96
## Delemont 83.1 45.1 6 9 84.84
## Franches-Mnt 92.5 39.7 5 5 93.40
## Moutier 85.8 36.5 12 7 33.77
## Neuveville 76.9 43.5 17 15 5.16
## Porrentruy 76.1 35.3 9 7 90.57
## Infant.Mortality
## Courtelary 22.2
## Delemont 22.2
## Franches-Mnt 20.2
## Moutier 20.3
## Neuveville 20.6
## Porrentruy 26.6
source("http://aoki2.si.gunma-u.ac.jp/R/src/radar.R", encoding="euc-jp")
radar(swiss[1:6,])
radar(swiss[1:6,],col=c(1:6))
#############################################
radarchart(dat, #データ
axistype=3,#ラベルの表示方法
pcol=c(1:3),#線の色
pty=32, #データ点をプロットをしない(32)
plty=1, #ラインのタイプ
plwd=2, #ラインの太さ
pdensity=c(5, 10, 15), #塗りつぶす(斜線の)程度
pangle=c(15, 45, 120), #塗りつぶす斜線の傾き
pfcol=c(1:3)) #塗りつぶす色
###########################################
# Data
maxmin <- data.frame(
V1=c(20,-20),
V2=c(30,10),
V3=c(30,-30),
V4=c(50,30),
V5=c(10,0),
V6=c(100,-50))
dat <- data.frame(
V1=round(runif(3,-20,20)),
V2=round(runif(3,10,30)),
V3=round(runif(3,-30,30)),
V4=round(runif(3,30,50)),
V5=round(runif(3,0,10)),
V6=round(runif(3,-50,100)))
(data <- rbind(maxmin,dat))
## V1 V2 V3 V4 V5 V6
## 1 20 30 30 50 10 100
## 2 -20 10 -30 30 0 -50
## 3 7 28 -10 44 7 39
## 4 3 15 27 43 7 -7
## 5 -16 11 23 50 5 -28
VLabel <- colnames(data)
radarchart(data, #データ
axistype = 2, #ラベルの表示方法(1-5から選択)
seg = 5, #各軸の区切り数
plty = 1, #ラインのタイプ
vlcex = 1,
centerzero = TRUE,
vlabels = VLabel,
title = "(axis=1, 5 segments, with specified vlabels)")
###########################################
library(fmsb)
# Data
maxmin <- data.frame(
V1=c(3,-3,0),
V2=c(3,-3,0),
V3=c(3,-3,0),
V4=c(3,-3,0),
V5=c(3,-3,0),
V6=c(3,-3,0),
V7=c(3,-3,0),
V8=c(3,-3,0),
V9=c(3,-3,0),
V10=c(3,-3,0),
V11=c(3,-3,0),
V12=c(3,-3,0))
dat <- data.frame(
V1=round(runif(3,-3,3),2),
V2=round(runif(3,-3,3),2),
V3=round(runif(3,-3,3),2),
V4=round(runif(3,-3,3),2),
V5=round(runif(3,-3,3),2),
V6=round(runif(3,-3,3),2),
V7=round(runif(3,-3,3),2),
V8=round(runif(3,-3,3),2),
V9=round(runif(3,-3,3),2),
V10=round(runif(3,-3,3),2),
V11=round(runif(3,-3,3),2),
V12=round(runif(3,-3,3),2))
(data <- rbind(maxmin,dat))
## V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12
## 1 3.00 3.00 3.00 3.00 3.00 3.00 3.00 3.00 3.00 3.00 3.00 3.00
## 2 -3.00 -3.00 -3.00 -3.00 -3.00 -3.00 -3.00 -3.00 -3.00 -3.00 -3.00 -3.00
## 3 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
## 4 2.78 1.77 1.55 -1.61 -0.52 -2.17 -1.40 -0.35 0.37 1.52 0.99 -1.35
## 5 2.41 -2.85 -1.70 -2.14 -0.79 -1.60 2.15 1.79 -1.76 2.37 -2.43 1.89
## 6 1.14 -0.13 -1.09 -0.51 -2.09 -0.20 -2.73 -2.27 -2.23 -0.75 -0.70 -0.31
VLabel <- colnames(data)
radarchart(data,
axistype=3,
pty=32,
plty=c(3,1,1,1),
plwd=2,
pcol=c(1:4),
pdensity=c(0,0,0, 20),
pfcol=c(0,0,0,4),
centerzero=TRUE,
seg=6,
axislabcol="gray",
caxislabels=c("-3", "-2", "-1", "0", "1","2","3"))
x = c(rep(4.5,7),rep(0,7),
3.34, 3.28, 1.37, 1.12, 3.52, 4.07, 3.66)
a = as.data.frame(matrix(x,nrow=3, ncol=7,byrow=T))
radarchart(a,
axistype = 3,
seg = 3,
pty = 32,
plwd = 3,
pcol = "blue",
axislabcol = "gray",
centerzero=T,
caxislabels=c("0","1.5","3.0", "4.5"))