2015-06-18 6 views
0

У меня есть следующие:Connected пузырьковая диаграмма в R

type <- c('a', 'b', 'c', 'a&b', 'a&c', 'b&c', 'a&b&c') 
distribution <- c(.25, .1, .12, .18, .15, .05, .15) 

Я хотел бы создать пузырь диаграмму, как показано в выбранном ответе на этот вопрос: Proportional venn diagram for more than 3 sets, где области пузырьковые пропорциональны значения в векторе распределения и соединительных линиях показывают связь между тремя основными пузырьками «a», «b» и «c».

+2

запросы пакетов, как правило, рассматриваются не по теме. Было бы лучше включить небольшой [воспроизводимый пример] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example) некоторых данных, которые у вас есть, что вы хотели бы визуализировать таким образом и перефразировать ваш вопрос. – MrFlick

+1

Пакет 'igraph' может помочь. –

ответ

2

Используя библиотеку igraph с вашими данными, вы можете создать ребра и вершины, чтобы представить желаемый сюжет. Вот один из способов сделать это

library(igraph) 
type <- c('a', 'b', 'c', 'a&b', 'a&c', 'b&c', 'a&b&c') 
distribution <- c(.25, .1, .12, .18, .15, .05, .15) 

mx <- strsplit(type,"&") 
ei <- sapply(mx,length)>1 
cx <- do.call(rbind, mapply(cbind, type[ei], mx[ei])) 

gg <- graph.edgelist(cx, directed=FALSE)  

V(gg)[type]$size<-distribution *200 
plot(gg) 

И это сюжет я получил

enter image description here

+0

Есть ли способ изменить цвет вершинного периметра? 'list.vertex.attributes (gg)' возвращает "имя" "размер" "цвет". Однако изменение атрибута «цвет» изменяет только заполнение. – drumminactuary

+1

Попробуйте 'V (gg) [type] $ frame.color <-" darkgreen "' – MrFlick

Смежные вопросы