Valeu, O que o Cid mandou ficou bem proximo mesmo. Agora, eu fiquei olhando umas coisas no código e não consigo entender umas coisas, por exemplo o que seria o ..prop.. e o ..x..? Com frequência eu procuro quais os possíveis valores que o stat pode receber e eu so vejo o stat = "count" ou uma função definida pelo usuário. Outra coisa que acho bem difícil é que com o ggplot muitos graficos não tem a cara do desejado no final nas primeiras linhas de comando. Por exemplo, no recomendado pelo Cid, se eu rodar somente as 3 primeiras linhas... fica muito esquisito ainda.
Por ultimo, nesse codigo do Cid, como eu faria pra tirar os níveis das categorias da Satisfação do eixo x já que estão na legenda do fill? Pedro Brasil Em ter., 21 de dez. de 2021 às 15:39, Cid Póvoas por (R-br) < [email protected]> escreveu: > > Adicionei umas coisas > > library(ggplot2) > ggplot(a, aes( x = Satisfaction, group=Visit)) + > geom_bar(aes(y = ..prop.., fill = factor(..x..)), stat="count") + > geom_text(aes(label = scales::percent(round(..prop..,2)), > y= ..prop.. ), stat= "count", vjust = -.5, > size = 3) + > theme_bw(15)+ > theme(axis.text.x= element_text(angle=45, size = 10, hjust=1), > legend.position = "top", > strip.background = element_blank(), > panel.grid.major.x = element_blank(), > panel.grid.minor.x = element_blank(), > panel.grid.minor.y = element_blank(), > #panel.grid.major.y = element_line(linetype=2, size=1), > panel.grid.minor = element_blank(), > panel.grid.major = element_blank(), > legend.title = element_blank()) + > labs(y = "Percent", fill="Satisfaction") + > #facet_grid(~Visit+Intervention) + > facet_wrap(~Visit+Intervention,strip.position="top",ncol=10)+ > scale_y_continuous(labels = scales::percent)+ > scale_fill_manual(values = ramp(5),labels=levels(a$Satisfaction)) > > > > *Cid Edson Mendonça Póvoas* > > *AnovAgro <http://www.anovagro.com/>* > *Engenheiro Agrônomo - **Data Scientist* > *CREA : 051984991-4* > *Técnico em Segurança do Trabalho * > *Nº: **0012669/BA* > *Tel: +55 73 99151-9565* > *Lattes : *http://lattes.cnpq.br/2303498368142537 > *LinkedIn :* http://br.linkedin.com/in/cidedson/ > *Whatsapp :* https://wa.me/5573991519565 > > > Em ter., 21 de dez. de 2021 às 14:54, Felipe Barletta por (R-br) < > [email protected]> escreveu: > >> Prezado Pedro, >> >> Talvez esse código lhe sirva (com alguns ajustes de perfumaria nas >> legendas e eixos) >> >> >> ########################################################################### >> library(ggplot2) >> ggplot(a, aes( x = Satisfaction, group=Visit)) + >> geom_bar(aes(y = ..prop.., fill = factor(..x..)), stat="count") + >> geom_text(aes( label = scales::percent(..prop..), >> y= ..prop.. ), stat= "count", vjust = -.5, >> size = 2.5 ) + >> theme(axis.text.x= element_text(angle=45, size = 8), >> legend.title=element_blank()) + >> labs(y = "Percent", fill="Satisfaction") + >> facet_grid(~Visit+Intervention) + >> scale_y_continuous(labels = scales::percent) >> >> Em ter., 21 de dez. de 2021 às 12:02, Pedro Emmanuel Alvarenga Americano >> do Brasil por (R-br) <[email protected]> escreveu: >> >>> Amigos de R, >>> >>> Estou num esforço de tentar aprender a usar o tidyverse. Gostaria de >>> manter a consistência de um relatório que estou trabalhando com gráficos do >>> ggplot. Mas há um particular gráfico de barras que não estou conseguindo >>> fazer. Alguém pode me ajudar a fazer o gráfico no ggplot + geom_bar? Segue >>> abaixo um exemplo como eu faria com o graphics. >>> >>> # Preparando os dados simulados >>> tab <- array(c(92,74,11,0,0,94,98,10,1,0, >>> 83,56,13,2,0,96,68,9,7,0, >>> 46,28,7,1,1,54,59,16,7,0, >>> 26,20,3,0,0,36,32,16,4,0, >>> 8,2,0,0,0,3,3,1,0,0), c(5, 2, 5)) >>> dimnames(tab) <- list(c("Definitively satisfied", >>> "Satisfied", >>> "Little satisfied", >>> "Little dissatisfied", >>> "Definitively dissatisfied"), >>> c("Surface 1","Surface 2"), >>> c(1:5)) >>> names(dimnames(tab)) <- c("Satisfaction","Intervention","Visit") >>> tab >>> a <- epitools::expand.table(tab) >>> a$Visit <- paste0("Visit ", a$Visit) >>> head(a) >>> >>> # Fazendo as tabelas ja com os percentuais >>> x <- sapply(unique(a$Visit), function(i) >>> prop.table(table(a$Satisfaction[a$Visit==i],a$Intervention[a$Visit==i]),2), >>> simplify = FALSE) >>> >>> # Criando o objeto height do barplot >>> y <- x[[1]] ; for(i in 2:length(x)) {y <- cbind(y,x[[i]])} >>> ramp <- colorRampPalette(c("darkgreen","red")) >>> >>> # Criando o gráfico >>> z <- barplot(y, beside = T, col = ramp(5), >>> legend = T, >>> args.legend = >>> list(x="top",xpd=NA,inset=-.15,bty="n",cex=.8, ncol = 2), >>> axisnames = FALSE) >>> axis(2, at = seq(0,1,.025),labels = FALSE, tck = -.01) >>> text(z[3,], -.005, colnames(y), cex = .5, srt = 35, xpd = NA, adj = 1, >>> offset = 5) >>> axis(1, at = sapply(seq(0,ncol(z)-2,2),function(i) mean(z[,c(1:2) + >>> i])),labels = unique(a$Visit), line = 1.5, tick = FALSE) >>> sapply(1:ncol(y), function(i) text(x = z[1:5,i], y = y[1:5,i], labels = >>> round(y[1:5,i],2), pos = 3, cex = .5, xpd = NA)) >>> >>> Abraço forte a todos, >>> Pedro Brasil >>> _______________________________________________ >>> R-br mailing list >>> [email protected] >>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>> código mínimo reproduzível. >>> >> _______________________________________________ >> R-br mailing list >> [email protected] >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >> código mínimo reproduzível. >> > _______________________________________________ > R-br mailing list > [email protected] > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça > código mínimo reproduzível. >
_______________________________________________ R-br mailing list [email protected] https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
