Leonard mais uma vez agradeço a grande ajuda
humberto

Em 10/25/2012 10:42 PM, Leonard de Assis escreveu:
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> com
Em 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 < [email protected] >* 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 <[email protected]
    <mailto:[email protected]>> 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  com

            Em 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  com

                    Em 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 <
                        [email protected]
                        <mailto:[email protected]> >* escreveu:
                        Utilize as funções plot, segments e par para
                        obter êxito! O link abaixo será útil também.
                        http://gallery.r-enthusiasts.com/
                        (S,f,P)
                        Allaman
                        **
                        \begin{signature}
                        <<>>=
                        Prof. Dr. Ivan Bezerra Allaman
                        Universidade Estadual de Santa Cruz
                        Departamento de Ciências Exatas e Tecnológicas
                        Ilhéus/BA - Brasil
                        Fone: +55 73 3680-5596
                        <tel:%2B55%2073%203680-5596>
                        E-mail:
                        [email protected]/[email protected]
                        <mailto:[email protected]/[email protected]>
                        @
                        \end{signature}


                        _______________________________________________
                        R-br mailing list
                        [email protected]  
<mailto:[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]  <mailto:[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]  <mailto:[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]  <mailto:[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] <mailto:[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.



_______________________________________________
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.

Responder a