ベン図はデータを解釈する時に役に立ちます。Rでベン図を作成するには色々な方法があります。参考としてVennDiagramパッケージを紹介します。VennDiagramパッケージはデータをリストで扱うことができるので便利です。ただ、比較データが4以上になると、プロット時にデータが左側から並んでくれませんので工夫が必要です。紹介コードではデータが左から並ぶように調整しています。
パッケージのインストール
install.packages("VennDiagram")
コマンド
#パッケージの読み込み library("VennDiagram") ###データ例の準備##### A <- sample(1:1000, 100, replace = FALSE) B <- sample(200:800, 100, replace = FALSE) C <- sample(300:500, 100, replace = FALSE) D <- sample(400:600, 100, replace = FALSE) Data <- c(A, B, C, D) #4つのデータを想定 Point <- sample(c("Point1", "Point2", "Point3", "Point4"), length(Data), replace = TRUE) #データの作成 ProtData <- data.frame(Data, Point) ######## ###ベン図をプロット##### #ラベルの作成,降順に並び替え Point <- sort(as.character(unique(ProtData[, 2]))) #測定列を指定 #測定ポイントが左から並ぶように調整 ifelse(length(Point) > 3, Point <- c(Point[1], Point[length(Point)], c(Point[2:(length(Point) - 1)])), invisible()) #ベン図プロットに使うリスト作成 VennList <- vector("list", length(Point)) names(VennList) <- Point #ラベルの付与 for(n in seq(Point)){ VennList[[n]] <- subset(ProtData[, 1], ProtData[,2] %in% Point[n]) #測定ポイント行を入力 } ###ベン図プロットの設定##### #ベン図の塗り色を設定 FillCol <- c("dodgerblue", "goldenrod1", "darkorange1", "seagreen3", "orchid3") #プロット grid.newpage() grid.draw(venn.diagram( x = VennList, fill = FillCol[1:length(Point)], filename = NULL))
出力
少しでも、ウェブや実験の解析が楽になりますように!!