私は5つのレーダーチャートを作成しようとしています。各チャートには2つのプロットがあります。 したがって、私のデータフレームの2つの行が1つのレーダーチャートを構成します。R - 2つのプロットを持つ各グラフでレーダーチャートの行列を作る方法。
例示的なデータフレーム:
DF
name A B C D E
name1 1 2 3 4 5
name1 3 2 3 5 4
name2 3 5 4 5 5
name2 2 1 5 1 5
name3 1 3 2 4 1
name3 5 4 1 2 2
name4 1 2 3 4 5
name4 5 4 3 2 1
name5 1 2 3 4 5
name5 5 4 3 2 1
df
データフレームは、2つの異なるデータフレームで構成されています。行c(1,3,5,7,9)
は1データフレームであり、行c(2,4,6,8,10)
は別のデータフレームです。 1つのレーダーチャートに2つのプロットの最終目標を達成する方が簡単だと思ったので、私はそれらを1つのデータフレームに入れました。しかし、より簡単で効率的な方法があれば教えてください。
私は行1と2を1つのチャートに、行3と4を1つのチャートに、行5と6を1つのチャートに、行7と8を1つのチャートに、行9と10を1つのチャート。私は現在やっている何を
:
library(fsmb)
library(plyr)
library(dplyr)
colors_border <- c(rgb(0.2,0.5,0.5,0.9), rgb(0.8,0.2,0.5,0.9))
colors_in <- c(rgb(0.2,0.5,0.5,0.4), rgb(0.8,0.2,0.5,0.4))
par(mar=c(1,1,1,1))
layout(matrix(1:5, ncol = 5, nrow = 1, byrow = T))
laply(c(1,3,5,7,9), function(x){
radarchart(rbind(rep(5,5), rep(1,5), df[c(1,2,3,4,5,6,7,8,9,10),-1]),
axistype=1 ,
pcol=colors_border,
pfcol=colors_in,
title = df$name[x],
plwd=3,
plty=1,
cglcol="grey",
cglty=1,
axislabcol="grey",
caxislabels=seq(1,5,1),
cglwd=0.8,
vlcex=0.8)
})
あなたはすべての行が各レーダーチャートにプロットされて見ることができるように
。私の実際のデータフレームは20行7つの変数を持っています。
さらに詳しい情報が必要な場合はお知らせください。どんな助けもありがとうございます。
このプレゼンテーションでは、データには1つの列が欠落しているように見えます。これは、特定のレーダーチャートの最初または2番目のデータセットであるかどうかを定義するものです。たとえば、 'DF $ type = rep(1:2、times = 5)'(実際のデータに必要に応じて調整します)。こうすることで、 'name'を最初にグループ化/反復し、次に' type'を簡単に繰り返すことができます。 – r2evans
ご意見ありがとうございます。私が使用している 'laply'関数で' name'と 'type'を反復する方法として答えを提供できますか? – Dre