Я пытаюсь использовать ggalluvial, чтобы отслеживать академические пути студентов в течение семестров и видеть, как студенты меняют учебную программу с течением времени.Как сопоставить индивидуальный путь к аллювиальной диаграмме?
Это образец моего набора данных:
structure(list(id = c("1", "2", "6", "8", "9", "10", "11", "12",
"14", "15", "1", "2", "6", "8", "9", "10", "11", "12", "14",
"15", "1", "2", "6", "8", "9", "10", "11", "12", "14", "15",
"1", "2", "6", "8", "9", "10", "11", "12", "14", "15", "1", "2",
"6", "8", "9", "10", "11", "12", "14", "15", "1", "2", "6", "8",
"9", "10", "11", "12", "14", "15", "1", "2", "6", "8", "9", "10",
"11", "12", "14", "15", "1", "2", "6", "8", "9", "10", "11",
"12", "14", "15"),
curr = c("CURR1", "CURR1", "CURR1", "CURR1",
"CURR1", "CURR1", "CURR1", "CURR1", "CURR1", "CURR1", "CURR3",
"CURR3", "CURR3", "CURR3", "CURR3", "CURR3", "CURR3", "CURR3",
"CURR3", "CURR3", "CURR5", "CURR5", "CURR5", "CURR5", "CURR5",
"CURR5", "CURR5", "CURR5", "CURR5", "CURR5", "CURR7", "CURR7",
"CURR7", "CURR7", "CURR7", "CURR7", "CURR7", "CURR7", "CURR7",
"CURR7", "CURR9", "CURR9", "CURR9", "CURR9", "CURR9", "CURR9",
"CURR9", "CURR9", "CURR9", "CURR9", "CURR11", "CURR11", "CURR11",
"CURR11", "CURR11", "CURR11", "CURR11", "CURR11", "CURR11", "CURR11",
"CURR13", "CURR13", "CURR13", "CURR13", "CURR13", "CURR13", "CURR13",
"CURR13", "CURR13", "CURR13", "CURR15", "CURR15", "CURR15", "CURR15",
"CURR15", "CURR15", "CURR15", "CURR15", "CURR15", "CURR15"),
value = c("ISDS", "ISDS", "GBUS", "ISDS", "GBUS", "ISDS",
"ACCT", "GBUS", "ITF", "MGT", "ISDS", "ISDS", "GBUS", "ISDS",
"MKT", "ISDS", "ACCT", "GBUS", "ITF", "MGT", "ISDS", "ISDS",
"ISDS", "ISDS", "MKT", "ISDS", "ACCT", "GBUS", "ISDS", "MGT",
"ISDS", "ISDS", "ISDS", "ISDS", "ISDS", "ISDS", "ACCT", "GBUS",
"ISDS", "ISDS", "ISDS", "ISDS", "ISDS", NA, "ISDS", "ISDS",
"ACCT", "ISDS", "ISDS", "ISDS", "ISDS", "ISDS", "ISDS", "ISDS",
"ISDS", "ISDS", "ISDS", "ISDS", "ISDS", "ISDS", "ISDS", NA,
"ISDS", "ISDS", "ISDS", NA, "ISDS", "ISDS", "ISDS", "ISDS",
"ISDS", NA, "ISDS", "ISDS", "ISDS", NA, "ISDS", "ISDS", "ISDS",
NA)), class = "data.frame", row.names = c(NA, -80L), .Names = c("id",
"curr", "value"))
- ID = студент ID
- ТОК = семестре идентификатор
- значение = учебный план идентификатор
Я хотел бы карту :
CURR
(переменное время), к оси хvalue
к различным высотам оси уотсчет
value
для каждогоCURR
к ширине потоков
Диаграмма должна содержать информацию, из которой/в какую учебную программу они «текут» со временем.
Это то, что я до сих пор, что является довольно от
ggplot(as.data.frame(ff2),
aes(x=curr, axis1=value, group=id)) +
geom_alluvium(aes(fill = value))
По оси х выглядит хорошо, но weight
не отражает различные веса учебных планов с течением времени, ни I может следовать «потокам» студентов.
Мое первое предложение - заказать переменные. Измените CURR на числовую или, по крайней мере, буквенно-упорядоченную строку. 'ff2 $ curr <- as.numeric (gsub (" CURR "," ", ff2 $ curr))' Что касается значения, я не совсем уверен, что вы подразумеваете под ростом оси y , – jesstme
@jesstme Я хотел бы иметь название учебной программы по оси y. Что касается заказа, я могу использовать 'order', но это не решает проблему. – Dambo