----- Mensagem encaminhada ----
De: Paulo Justiniano Ribeiro Jr <paulojus@c3sl.ufpr.br>
Para: R_STAT@yahoogrupos.com.br
Enviadas: Segunda-feira, 19 de Janeiro de 2009 12:20:48
Assunto: Re: [R_STAT] Gráfico com dois eixos y - outra solucao mais simples

aqui vai uma outra solução bem mais simples (e elegante!):

x <- 1:20
x1 <- rnorm(20)
x2 <- rpois(20, lam=50)
plot(x, x1, type="l")
par(new=T)
plot(x, x2, type="l", axes=F, frame=T, ann=F, col=2)
axis(4)

Paulo Justiniano Ribeiro Jr
LEG (Laboratorio de Estatistica e Geoinformacao)
Universidade Federal do Parana
Caixa Postal 19.081
CEP 81.531-990
Curitiba, PR - Brasil
Tel: (+55) 41 3361 3573
Fax: (+55) 41 3361 3141
e-mail: paulojus AT ufpr br
http://www.leg. ufpr.br/~ paulojus

On Mon, 19 Jan 2009, Paulo Justiniano Ribeiro Jr wrote:

> Caro Henrique e Vinicius
>
> Imagino que o que o Vinicuis quer é um pouco diferente do proposto pelo
> Henrique onde possam ser colocados no mesmo gráfico
> dias variávies de ordem de grandezas diferentes, e portanto o simples uso
> de ylim nao seria suficiente.
>
> Nao sei se tem algo automatizado para isto encapsulado em alguma função do
> R.
> Mas para fazer passo a passo a ideia de solução neste caso seria:
>
> 1. fazer o gráfico da 1a
> 2. fazer um reescalonamento da segunda via uma interpolação linear da
> segunda dentro da faixa de variação da primeira
> 3. adicionar esta segunda reencalonada ao gráfico
> 4. adicionar o eixo do outro lado na escala original.
>
> Um exemplo implementando estes passos:
>
> x <- 1:20
> x1 <- rnorm(20)
> x2 <- rpois(20, lam=50)
>
> plot(x, x1, type="l", axes=F, frame=T)
> axis(1)
> axis(2, at=seq(-2,2, by=1))
>
> x2.n <- min(x1) + (diff(range( x1))/diff( range(x2) )) * (x2-min(x2))
> lines(x, x2.n, col=2)
> x2.l <- min(x2) + (diff(range( x2))/diff( range(x1) )) * (seq(-2,2,by= 1) -
> min(x2))
> axis(4, at=seq(-2,2, by=1), labels = round(x2.l, dig=1))
>
>
>
> Paulo Justiniano Ribeiro Jr
> LEG (Laboratorio de Estatistica e Geoinformacao)
> Universidade Federal do Parana
> Caixa Postal 19.081
> CEP 81.531-990
> Curitiba, PR - Brasil
> Tel: (+55) 41 3361 3573
> Fax: (+55) 41 3361 3141
> e-mail: paulojus AT ufpr br
> http://www.leg. ufpr.br/~ paulojus
>
>
>
> On Mon, 19 Jan 2009, Henrique Dallazuanna wrote:
>
> > Tente assim:
> >
> > par(mar = c(5, 4, 3, 4))
> > plot(1:10, rnorm(10), type = 'l', ylim = c(1, 20))
> > lines(11:20, col = 'red')
> > axis(4)
> > mtext(text = "Segundo Eixo Y", 4, line = 3)
> >
> > 2009/1/19 Vinicius Brito Rocha <viniciusbritor@ hotmail.com>
> >
> > > Srs.
> > >
> > > quero plotar informações com diferentes escalas em um mesmo gráfico, queria
> > > usar um recurso semelhante ao do excel, onde um eixo y fica do lado direito
> > > e o outro do lado esquerdo.
> > >
> > >
> > >
> > > Vinicius Brito Rocha.
> > >
> > >
> > >
> > >
> > >
> > > ------------ --------- ---------
> > > É fácil compartilhar suas fotos com o Windows LiveT Arraste e solte<http://www.microsof t.com/windows/ windowslive/ photos.aspx>
> > >
> > >
> >
> >
> >
> > --
> > Henrique Dallazuanna
> > Curitiba-Paraná -Brasil
> > 25° 25' 40" S 49° 16' 22" O
> >
>

__._,_.___
Atividade nos últimos dias
Visite seu Grupo
Yahoo! Mail

Conecte-se ao mundo

Proteção anti-spam

Muito mais espaço

Yahoo! Barra

Instale grátis

Buscar sites na web

Checar seus e-mails .

Yahoo! Grupos

Crie seu próprio grupo

A melhor forma de comunicação

.

__,_._,___