2012-01-04 10 views
9

t y tt tienen días en común, pero las valoraciones no son ni siquiera cercanas, por lo que no aparecen en la misma parcela. ¿Hay algún comando para ajustar el eje a 0:10 en el comando de inicio o después de líneas? ¿Alguna manera automática de hacerlo así que cada punto aparece?Ajusta el eje R en trazados después del trazado (...) y las líneas (...)?

t<-structure(list(as.Date.e1.V1....d..m..Y.. = structure(c(15138, 
15139, 15140, 15141, 15142, 15145, 15146, 15147, 15148, 15152, 
15152), class = "Date"), e1.V2 = c(2.26, 2.82, 2.89, 2.52, 
2.19, 2.02, 2.85, 2.99, 2.21, 2.15, 2.22)), .Names = c("as.Date.e1.V1....d..m..Y..", 
"e1.V2"), row.names = 3270:3280, class = "data.frame") 

tt<-structure(list(as.Date.e2.V1....d..m..Y.. = structure(c(15135, 
15138, 15139, 15140, 15141, 15142, 15145, 15146, 15147, 15148, 
15152), class = "Date"), e2.V2 = c(11.29, 11.15, 11.25, 
11.4, 11.68, 11.08, 9.9, 9.74, 9.46, 9.45, 9.87 
)), .Names = c("as.Date.e2.V1....d..m..Y..", "e2.V2"), row.names = 195:205, class = "data.frame") 


plot(t) 
# How to adjust here the tt so that t and tt can be seen at the same time? 
lines(tt) 

estoy seguro sobre el error, porque trazado funciona con puntos de valoración comunes:

> plot(data.frame(tt[1], log(tt[2])), type='l') 
> points(data.frame(t[1], log(t[2])+1.5)) 

enter image description here

Ahora, sin -puntos Y comunes, no se puede verlos en la misma parcela. Entonces, ¿cómo ajustarlo?

Respuesta

8

Sobre la base de Geek sobre la respuesta de ácido, aquí está una formulación general que aborda el problema de rango.

plot(t,ylim=range(t[2],tt[2])) 
lines(tt) 
1

Hmm si tengo tu pregunta correcta, sólo tiene que añadir ylim argumento a la plot, pero que es compañero simplemente trivial:

plot(t,ylim=c(1,15)) 
lines(tt) 

enter image description here

+1

... sí, esa es la manera de hacerlo inicialmente, pero ¿hay alguna forma de ajustarlo después de los comandos o de forma automática? Supongamos que no sé que es c (0,15), ¿alguna bandera para el ajuste automático? +1 para señalar el comando. Estoy buscando alguna solución genérica, tal vez solo 'c (min (valores), max (valores))' es el camino a seguir con un vector ... pero supongamos que tengo muchos valores -vectores- se vuelve desordenado muy pronto ¿o? – hhh

+2

Ok, ya veo. Bueno, también podría especificar la columna haciendo 'plot (t, ylim = c (0, max (tt [, 2])))' pero como señaló, será necesario que verifique qué conjunto de datos tiene los valores más altos , entonces no es tan robusto como lo quieres ... –

+0

sí, eso es correcto. También estoy considerando un ajuste más accesible. Acabo de encontrar cosas bastante interesantes, tal vez algún truco con 'locator',' identify' o algo tan conveniente - no puedo estar seguro todavía, investigando ... a menudo es útil ajustar la trama con el mouse, no estoy seguro si es posible (. Tal vez se llama 'zooming', no se ajusta, piensa en voz alta). – hhh

1

Una generalización a P Lapointe's responder

plot(t,ylim=range(min(min(t),min(tt)),max(max(tt),max(t)))) 
lines(tt) 

si acaso el segundo valor de cada serie no son lo suficientemente grande/pequeña.

Cuestiones relacionadas