
Olá, Pessoal. Estou com um problema que não consigo resolver. Estou tentando plotar duas linhas de densidade em um mesmo dispositivo gráfico. Preciso que as escalas fiquem fixas, então estou delimitando os eixos com xlim e ylim. O problema é que quando faço isso, as curvas de densidades não são plotadas. Segue um código reproduzível ### Assim funciona, já que não delimito os limites x=rnorm(1000,10,1) y=runif(1000,20,200) z=runif(1000,30,50) plot(density(x,weights=y,from=min(x),to=max(x)),main="Density") plot(density(x,weights=z,from=min(x),to=max(x)),main="Density") #mas assim não! plot(density(x,weights=y,from=min(x),to=max(x)),main="Density",xlim=range(x),ylim=range(c(y,z))) Já tentei em outro computador, dá a mesma coisa. Já usei a interface GUI do R (Eu uso Rstudio), e também não dá. Já tentei criar um plot pra delimitar os eixos e depois adicionar as curvas com lines(), mas o problema continua. Quem puder me ajudar, agradeço muito. -- Abraços, Ricardo Fernandes Campos Junior Departamento de Genética e Biologia Evolutiva Universidade de São Paulo

codigo nao testado q deve estar prox do q procura ## reproduzivel set.seed(1) x=rnorm(1000,10,1) y=runif(1000,20,200) z=runif(1000,30,50) ## determina pesos p densidade verdadeira w=list(y/sum(y), z/sum(z)) ## from/to sao redundantes p esse caso dens=lapply(w, function(.w) density(x, weights=.w)) dx=sapply(dens, '[[', 'x') dy=sapply(dens, '[[', 'y') matplot(dx, dy, lty=1, type='l', xlab='x', ylab='densidade', main='titulo') legend('topright', c('y', 'z'), title='peso', col=1:2, lty=1) b 2011/9/24 Ricardo Fernandes Campos Junior <ricardofcj@gmail.com>:
Olá, Pessoal. Estou com um problema que não consigo resolver. Estou tentando plotar duas linhas de densidade em um mesmo dispositivo gráfico. Preciso que as escalas fiquem fixas, então estou delimitando os eixos com xlim e ylim. O problema é que quando faço isso, as curvas de densidades não são plotadas.
Segue um código reproduzível ### Assim funciona, já que não delimito os limites x=rnorm(1000,10,1) y=runif(1000,20,200) z=runif(1000,30,50) plot(density(x,weights=y,from=min(x),to=max(x)),main="Density") plot(density(x,weights=z,from=min(x),to=max(x)),main="Density")
#mas assim não! plot(density(x,weights=y,from=min(x),to=max(x)),main="Density",xlim=range(x),ylim=range(c(y,z)))
Já tentei em outro computador, dá a mesma coisa. Já usei a interface GUI do R (Eu uso Rstudio), e também não dá. Já tentei criar um plot pra delimitar os eixos e depois adicionar as curvas com lines(), mas o problema continua.
Quem puder me ajudar, agradeço muito.
-- Abraços, Ricardo Fernandes Campos Junior Departamento de Genética e Biologia Evolutiva Universidade de São Paulo
_______________________________________________ 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.
-- Successful people ask better questions, and as a result, they get better answers. (Tony Robbins)
participantes (2)
-
Benilton Carvalho
-
Ricardo Fernandes Campos Junior