library(tidyverse) regiviisid=read_csv("http://www.tlu.ee/~jaagup/andmed/muu/muusika/regiviisid.txt") viisidmeta=read_csv("http://www.tlu.ee/~jaagup/andmed/muu/muusika/regiviisidmeta.txt") viisid=regiviisid %>% inner_join(viisidmeta, by=c("FKey"="ID")) liigid=c("Lüürika", "Pulma", "Jut", "Hälli", "mardi") algusnoodid=c("g", "2d", "h", "a", "2c") pildid=viisid %>% filter(tugiheli=="g", laululiik %in% liigid, P1 %in% algusnoodid) %>% mutate(P1=factor(P1, levels=algusnoodid)) %>% mutate(laululiik=factor(laululiik, levels=liigid)) %>% group_by(laululiik) %>% mutate(liigikogus=n()) %>% ungroup() %>% group_by(laululiik, P1) %>% mutate(kogus=n()/liigikogus) %>% select(laululiik, P1, kogus) %>% unique() %>% ggplot(aes(P1, kogus)) + geom_col() + transition_states(laululiik, transition_length=10) + ggtitle("{closest_state}") pildid %>% animate(renderer=magick_renderer()) viisidmeta %>% filter(laululiik %in% c("Lüürika", "Pulma")) %>% mutate(aasta=as.numeric(viisiKogA)) %>% select(aasta, kihelkond, laululiik) %>% filter(!is.na(aasta)) %>% arrange(aasta) %>% View() andmed=viisidmeta %>% filter(laululiik %in% c("Lüürika", "Pulma")) %>% mutate(aasta=as.numeric(viisiKogA)) %>% select(aasta, kihelkond, laululiik) %>% filter(!is.na(aasta)) %>% arrange(aasta) andmed %>% group_by(kihelkond, laululiik) %>% summarise(kogus=n()) %>% spread(laululiik, kogus, fill = 0) %>% ggplot(aes(Pulma, Lüürika, label=kihelkond))+geom_text() library(gganimate) andmed %>% group_by(aasta, kihelkond, laululiik) %>% summarise(kogus=n()) %>% spread(laululiik, kogus, fill = 0) %>% ggplot(aes(Pulma, Lüürika, label=kihelkond))+ geom_text() + transition_states(aasta) + ggtitle("{closest_state}") library(animation) saveGIF({ kaugus=15 for(a in 1880:1940){ print(andmed %>% filter(aasta>a-kaugus, aasta% group_by(kihelkond, laululiik) %>% summarise(kogus=n()) %>% spread(laululiik, kogus, fill = 0) %>% ggplot(aes(Pulma, Lüürika, label=kihelkond))+ geom_text()+ggtitle(paste(a-kaugus, "kuni ", a+kaugus))+xlim(0, 30)+ylim(0, 100)) } }) andmed %>% mutate(k2=str_split(kihelkond, ">")[[1]][1]) %>% .$k2 andmed$k2=sapply(str_split(andmed$kihelkond, ">"), function(rida){rida[1]}) View(andmed) saveGIF({ kaugus=15 for(a in 1880:1940){ print(andmed %>% filter(aasta>a-kaugus, aasta% group_by(k2, laululiik) %>% summarise(kogus=n()) %>% spread(laululiik, kogus, fill = 0) %>% ggplot(aes(Pulma, Lüürika, label=k2))+ geom_text()+ggtitle(paste(a-kaugus, "kuni ", a+kaugus))+xlim(0, 30)+ylim(0, 100)) } })