Só corrigindo
comando forestplot não existe, eu só peguei esta função (nomeada pelo rapaz que postou a dica) e colei.
O correto seria falar que utiliza ggplot para desenhar o gráfico.
A sorte do Humberto é que como eu estou estudando a fundo ggplot, assinei a lista deles para aprender um pouco e coincidentemente houve este exemplo e eu o tinha implementado em meus arquivos, pois atende a um objetivo que tenho no momento.
[]s Leonard de Assis assis <dot> leonard <at> gmail <dot> comEm 25/10/2012 22:16, Humberto escreveu:
Olá Andre
foi dado duas formas de se fazer: uma usando o forestplot e outra uma correção do código que coloquei, segue as duas.
Um abraço
Humberto
1- Codigo corrigido
par(mar=c(2, 8, 0, 0))
y.axis <- c(length(tableMat1a$or):1)
plot(tableMat1a$or,y.axis, type = "p", axes = F, xlab = "", ylab = "", pch = 19, cex = 1.2,xlim = c(0,1.2), xaxs = "r", main = "")
segments(tableMat1a$lci, y.axis, tableMat1a$uci, y.axis, lwd = 1.5)
axis(1,at=seq(0,1.2,by=0.1),labels = T,tick =T,cex.axis = 1.2,mgp = c(2,.7,0))
axis(2, at = y.axis, label = tableMat1a$Specie, las = 1, tick = F, mgp = c(2,.6,0),cex.axis = 1.2)
segments(1,1,1,30,lty=1)
2-Forestplot
# d is a data frame with 4 columns
# d$x gives variable names
# d$y gives center point
# d$ylo gives lower limits
# d$yhi gives upper limits
forestplot <- function(d, xlab="Odds Ratio", ylab="Study"){
require(ggplot2)
p <- ggplot(d, aes(x=x, y=y, ymin=ylo, ymax=yhi)) +
geom_pointrange() +
coord_flip() +
geom_hline(aes(x=0), lty=2) +
ylab(xlab) +
xlab(ylab) #switch because of the coord_flip() above
return(p)
}
# Create some dummy data.
d <- data.frame(x = toupper(letters[1:10]),
y = rnorm(10, .05, 0.1))
d <- transform(d, ylo = y-1/10, yhi=y+1/10)
my_theme <-
theme(
legend.position = "bottom",
plot.title = element_text(size = rel(1.5)),
panel.background =
element_rect(fill = "white"),
panel.border =
element_rect(colour = "black", fill="transparent", linetype="solid"),
panel.grid.major =
element_line(colour = "darkgrey", linetype = "dashed"),
panel.grid.minor =
element_line(colour = "dark grey", linetype = "dotted")
)
forestplot(d) + my_theme
Em 10/25/2012 9:34 PM, andrebvs escreveu:
E aí Humberto, como ficou o comando finalizado para resolver seu problema? Porque, acabou que alguns colegas te ajudaram aqui, ficando um pouco espalhado as informações, então, copia e cola aqui o resultado final da rotina!
Att.André
Em 25/10/2012 17:28, Humberto < hghazin@hotmail.com > escreveu:Obrigado Heloisa Problema resolvido
abr
Humberto
Em 10/25/2012 5:03 PM, Heloíse Pavanato escreveu:Desculpe...É no próprio plot.
plot(tableMat1a$or,y.axis, type = "p", axes = F, xlab = "", ylab = "", pch = 19, cex = 1.2,
xlim = c(0,1.2), xaxs = "r", main = "", xaxt='n')
Em 25 de outubro de 2012 16:57, Humberto <hghazin@hotmail.com> escreveu:
Leonard,
Muito obrigado pela ajuda mais uma vez!
Abr
Humberto
Em 10/25/2012 2:57 PM, Leonard de Assis escreveu:quanto ao fundo cinza:
my_theme <-
theme(
legend.position = "bottom",
plot.title = element_text(size = rel(1.5)),
panel.background =
element_rect(fill = "white"),
panel.border =
element_rect(colour = "black", fill="transparent", linetype="solid"),
panel.grid.major =
element_line(colour = "darkgrey", linetype = "dashed"),
panel.grid.minor =
element_line(colour = "dark grey", linetype = "dotted")
)
forestplot(d) + my_theme
este my_theme é um tema que eu utilizo em meus gráficos. Basta alterar nos locais certos
quanto ao posicionamento da linha vertical, substitua 'aes(x=0)' por 'aes(x=1)'
[]s Leonard de Assis assis leonard gmail comEm 25/10/2012 13:18, Humberto escreveu:Olá Andre, Ivan e Leonard
Muito obrigado pela ajuda! eu consegui dessa forma aqui! Porém no eixo dos x esta aperecendo numeros que se sobrepostos aos nomes das espécies que não estou conseguindo retirar. Alguem poderia me ajudar nesse sentido!
Gostei dessa alternativa do forestplot. Como faço para retirar esse background (cinza) do forestplot e adicionar a linha vertical no 1?
E mais uma vez obrigado a todos pela ajuda
tableMat1a é a tabela abaixo
Specie lci or uci 1 Bigeye tuna 0.0952 0.1293 0.176 2 Yellowfin tuna 0.0916 0.1255 0.172 3 Albacore 0.0913 0.1562 0.267 4 Swordfish 0.1311 0.1565 0.187 5 Sailfish 0.0368 0.0923 0.231 6 White marlim 0.1300 0.2161 0.359 7 Blue marlim 0.0738 0.1471 0.293 8 Blue shark 0.1303 0.1653 0.210 9 Crocodile shark 0.1123 0.1792 0.286 10 Pelagic stingray 0.1074 0.2052 0.392 11 Turtle oliva 0.1275 0.3802 1.134 12 Oceanic whitetip shark 0.1658 0.3788 0.866
par(mar=c(2, 8, 0, 0))
y.axis plot(tableMat1a$or,y.axis, type = "p", axes = F, xlab = "", ylab = "", pch = 19, cex = 1.2,
xlim = c(0,1.2), xaxs = "r", main = "")
segments(tableMat1a$lci, y.axis, tableMat1a$uci, y.axis, lwd = 1.5)
axis(1, at = seq(0,1.2,by=0.2), labels = NA, tick = T,
cex.axis = 1.2, mgp = c(2,.7,0))
axis(2, at = y.axis, label = tableMat1a$Specie, las = 1, tick = F, ,mgp = c(2,.6,0),cex.axis = 1.2)
segments(1,1,1,30,lty=1)
Em 10/25/2012 12:09 AM, Leonard de Assis escreveu:Andre,
vi a pouco na lista do ggplot2 um script que pode ser o que voce procura.
# d is a data frame with 4 columns
# d$x gives variable names
# d$y gives center point
# d$ylo gives lower limits
# d$yhi gives upper limits
forestplot require(ggplot2)
p geom_pointrange() +
coord_flip() +
geom_hline(aes(x=0), lty=2) +
ylab(xlab) +
xlab(ylab) #switch because of the coord_flip() above
return(p)
}
# Create some dummy data.
d y = rnorm(10, .05, 0.1))
d
forestplot(d)
[]s Leonard de Assis assis leonard gmail comEm 24/10/2012 23:55, andrebvs escreveu:Olá Humberto!Eu até começei a fazer o que estava querendo, porém, não consegui implementar os intervalos de confianças com as respectivas médias. Segue um script abaixo até onde cheguei, se alguém puder continuar e sanar sua dúvida, seria uma grande ajuda!
library(fields)
plot(xlim=c(0,1.8),5:10, bty='n',type="n",axes=F,xlab="Relative catchability",ylab="")
x y u v
axis(1,lwd=2,at = x,labels = formatC(x, format="fg"))
abline(v = 1, col = "black",lty=1,lwd=2)
arrow.plot(x[6],y[6],v,u,arrow.ex=.4, length=.2, col='black', lwd=2)
arrow.plot(x[6],y[6],u-360,v-45,arrow.ex=.5, length=.2, col='black', lwd=2)
text(0,7,"Bigeye\nYellowfin tuna\nAlbacore\nSwordfish\nSailfish\nWhite marlim\nBlue marlim\nBlue shark\nCrocodile shark\nPelagic stingray\nTurtle oliva\nOceanic whitetip shark",cex = 0.8,adj=c(0,0))
text(1.1,5,"Species\nBigeye tuna\nYellowfin tuna\nAlbacore\nSwordfish\nSailfish\nWhite marlim\nBlue marlim\nBlue shark\nCrocodile shark\nPelagic stingray\nTurtle oliva\nOceanic whitetip shark",cex = 0.8,adj=c(0,0))
Att.André Barbosa Ventura da Silva
Em 24/10/2012 20:38, Ivan Bezerra Allaman < ivanalaman@yahoo.com.br > escreveu:Utilize as funções plot, segments e par para obter êxito! O link abaixo será útil também.(S,f,P)
Allaman\begin{signature}<<>>=Prof. Dr. Ivan Bezerra AllamanUniversidade Estadual de Santa CruzDepartamento de Ciências Exatas e TecnológicasIlhéus/BA - BrasilFone: +55 73 3680-5596@\end{signature}
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br 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 R-br@listas.c3sl.ufpr.br 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 R-br@listas.c3sl.ufpr.br 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 R-br@listas.c3sl.ufpr.br 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
R-br@listas.c3sl.ufpr.br
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 R-br@listas.c3sl.ufpr.br 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 R-br@listas.c3sl.ufpr.br 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 R-br@listas.c3sl.ufpr.br 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 R-br@listas.c3sl.ufpr.br 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.