Gráfico de barras empilhadas circulares em R
Me deparei com este pacote incrível e relativamente simplesvisto aqui que pode criar belos gráficos de barras empilhadas normalizadas na forma polarigual a. Espero criar um gráfico semelhante, mas isso não é normalizado e pode ter valores brutos como entrada.
Em seu blog, ele indica que alguém criou uma versão não normalizada de seu código que pode produzir gráficos como este:
Isso é quase exatamente o que eu preciso, mas não consigo descobrir como empilhar as barras para produzir um gráfico assim (desculpe pela qualidade):
Aqui estão alguns dados de brinquedos que são um subconjunto dos dados reais que usarei e seguem o formato de entrada:
family item score value
Group 1 Disease 1 Genetics 1
Group 1 Disease 1 EMR 8
Group 1 Disease 1 Pubmed 10
Group 1 Disease 2 Genetics 1
Group 1 Disease 2 EMR 21
Group 1 Disease 2 Pubmed 4
Group 1 Disease 3 Genetics 0
Group 1 Disease 3 EMR 2
Group 1 Disease 3 Pubmed 0
Group 2 Disease 4 Genetics 4
Group 2 Disease 4 EMR 72
Group 2 Disease 4 Pubmed 16
Group 3 Disease 5 Genetics 2
Group 3 Disease 5 EMR 19
Group 3 Disease 5 Pubmed 7
Group 3 Disease 6 Genetics 2
Group 3 Disease 6 EMR 12
Group 3 Disease 6 Pubmed 6
Group 4 Disease 7 Genetics 0
Group 4 Disease 7 EMR 11
Group 4 Disease 7 Pubmed 4
Um link direto para o código do pacote que ele fornece abertamente pode ser encontradoaqui.
Muito obrigado, Ben
edit: Aqui está o que eu tentei-
Entrei no código e substituí:
# histograms
p<-ggplot(df)+geom_rect(
aes(
xmin=xmin,
xmax=xmax,
ymin=ymin,
ymax=ymax,
fill=score)
)
com:
# histograms
p<-ggplot(df)+
geom_bar(stat="identity", position="stack", aes(x=item, y=value,fill=score))
Eu fiz isso porque, até onde eu pude entender, não há uma maneira fácil de gerar uma barra empilhada usando geom_rect e quando eu tento o código acima com o contexto do script polarBarChart, ele plotará os gráficos de barras empilhadas, mas a partir de o centro gerando, em vez de sair de dentro. Além disso, quando uso esse trecho de código no script polarBarChart, recebo o seguinte erro:
“Error: Discrete value supplied to continuous scale”
e sem saída