R의 Sankey Diagram을 사용하여 데이터 흐름을 시각화하려고합니다.
이 블로그 게시물이 Sankey 다이어그램을 생성하는 R 스크립트에 연결되어 있음을 발견 했습니다 . 안타깝게도 상당히 원시적이며 다소 제한적입니다 (샘플 코드 및 데이터는 아래 참조).
누구든지 더 개발 된 다른 스크립트 또는 패키지에 대해 알고 있습니까? 내 최종 목표는 Sankey Diagrams 예제 에서와 같이 다이어그램 구성 요소의 상대적 크기별로 데이터 흐름과 백분율을 시각화하는 것입니다 .
나는 r-help list에 다소 비슷한 질문을 올렸지 만, 아무런 응답도없이 2 주 후에 나는 여기서 내 행운을 시도하고있다.
고마워, 에릭
추신. 저는 Parallel Sets Plot을 알고 있지만 제가 찾고있는 것은 아닙니다.
# thanks to, https://tonybreyal.wordpress.com/2011/11/24/source_https-sourcing-an-r-script-from-github/
sourc.https <- function(url, ...) {
# install and load the RCurl package
if (match('RCurl', nomatch=0, installed.packages()[,1])==0) {
install.packages(c("RCurl"), dependencies = TRUE)
require(RCurl)
} else require(RCurl)
# parse and evaluate each .R script
sapply(c(url, ...), function(u) {
eval(parse(text = getURL(u, followlocation = TRUE,
cainfo = system.file("CurlSSL", "cacert.pem",
package = "RCurl"))), envir = .GlobalEnv)
} )
}
# from https://gist.github.com/1423501
sourc.https("https://raw.github.com/gist/1423501/55b3c6f11e4918cb6264492528b1ad01c429e581/Sankey.R")
# My example (there is another example inside Sankey.R):
inputs = c(6, 144)
losses = c(6,47,14,7, 7, 35, 34)
unit = "n ="
labels = c("Transfers",
"Referrals\n",
"Unable to Engage",
"Consultation only",
"Did not complete the intake",
"Did not engage in Treatment",
"Discontinued Mid-Treatment",
"Completed Treatment",
"Active in \nTreatment")
SankeyR(inputs,losses,unit,labels)
# Clean up my mess
rm("inputs", "labels", "losses", "SankeyR", "sourc.https", "unit")
위 코드로 생성 된 Sankey Diagram,