Категориальные изменения сюжета R - диаграмма Санки

Кто-нибудь знает, как построить график изменений двух категориальных переменных в R?

Как в этом примере:

http://www.sueddeutsche.de/politik/waehlerwanderung-in-hamburg-wer-wem-die-stimmen-stahl-1.2353382

(Без динамика)

Итак, у меня есть две категориальные переменные, такие как: Pre и Post.

Pre = образец (1: 100,10000, replace = TRUE)

Сообщение = образец (1: 100,10000, заменить = ИСТИНА)

Спасибо за любой совет!


person hertbert.johnson    schedule 27.02.2015    source источник


Ответы (2)


Вот пример так называемой диаграммы Санки:

set.seed(1)
(edgelist <- transform(subset(expand.grid(source = c("spd", "linke", "cdu"), target = c("spd ", "linke ", "cdu "), stringsAsFactors = FALSE), target != paste0(source, " ")), value = sample(1:200, nrow(edgelist))))
#   source target value
# 2  linke   spd     54
# 3    cdu   spd     75
# 4    spd linke    114
# 6    cdu linke    179
# 7    spd   cdu     40
# 8  linke   cdu    176

require(rCharts)
sankeyPlot <- rCharts$new()
sankeyPlot$setTemplate(script = "layouts/chart.html")
sankeyPlot$setLib('http://timelyportfolio.github.io/rCharts_d3_sankey') 
sankeyPlot$set(data = edgelist, nodeWidth = 55, nodePadding = 50, width = 700, height = 400)
sankeyPlot

sankey

person lukeA    schedule 27.02.2015
comment
Вау, это круто. Большое спасибо! - person hertbert.johnson; 28.02.2015
comment
Я добавил диаграмму Санки к заголовку вопроса, чтобы, возможно, было легче найти кого-то еще. Отлично, действительно приятно, что R может делать что-то подобное - person hertbert.johnson; 28.02.2015
comment
хорошая идея. Да, R может делать так много всего, но иногда это немного лабиринт ...;) - person lukeA; 28.02.2015

Для очень простого и серьезного графика вы можете использовать функцию segment ().

plot(NULL, xlim=c(1,2), ylim=c(0,100))

segments(x0, Pre, x1, Post)
person C_Z_    schedule 27.02.2015
comment
Спасибо за хорошее предложение. Я попробую. - person hertbert.johnson; 28.02.2015