Tenho dados de um pré e pós-teste em dois grupos: controle e tratamento. Calculei a pontuação e agora quero ilustrar as diferenças entre grupos e testes. Como base tenho um data frame em R contendo para cada aluno uma linha com os resultados do pré e do pós-teste:
student_id group test_id Score
145 Treatment pre 0.12
145 Treatment post 0.78
109 Control pre 0.45
109 Control post 0.99
Eu escrevi o seguinte código
s2$test_id <- as.factor(s2$test_id)
s2$group <- as.factor(s2$group)
p <- ggplot(s2, aes(x = test_id, y=score, fill = group)) + geom_violinhalf(trim=FALSE, fill="gray")+
labs(title="Half Violin",x="Test", y = "Score")+
geom_boxplot(width=0.1)+
theme_classic() + scale_x_discrete(limits = rev)
p
produzindo
É possível que o violino cinza possa ser transformado na distribuição do grupo de tratamento (azul) e que eu possa adicionar uma segunda forma de violino à esquerda do pré e pós-teste representando a distribuição de controle (vermelho)?
Você pode usar a mesma variável de agrupamento usada para os boxplots internos e
geom_violinhalf
, em seguida, usar oflip
argumento para inverter os corretos:Dados usados com base na estrutura fornecida no snippet em questão