2012-06-19 10 views
5

Estoy tratando de trazar algunas líneas de soporte/resistencia sobre quantmod :: chart_Series(). El problema es que las líneas de soporte/resistencia interesantes están fuera (por debajo o por encima) del rango de datos de la serie hasta la hora actual (también me gustaría extender un gráfico un poco más allá de la última marca de tiempo).Anula escala yx con xlim/ylim o xrange/yrange en quantmod :: chart_Series() - ¿imposible?

Mirando el código fuente de quantmod :: chart_Series() No veo ninguna manera de especificar ylim/xlim o, lo que era posible en "los viejos tiempos" con quantmod :: chartSeries usando yrange para anular la escala y. Comentar aquí https://r-forge.r-project.org/scm/viewvc.php?view=rev&root=quantmod&revision=520 también confirma mi corazonada ...

¿Mi diagnóstico es correcto o hay alguna forma de habilitar la anulación de escala Y en quantmod :: chart_Series? Cualquier idea de cómo hacer lo que quiero es muy apreciada.

Gracias.

mejor, Samo

Respuesta

5

La página de ayuda para chart_Series() notas - tres veces! - que es experimental, por lo que presumiblemente la eventual versión pulida tendrá buenos controles para establecer estos límites.

Hasta entonces, aquí es un truco (?) Que le permitirá establecer los límites y le puede enseñar algo acerca de cómo chart_Series() obras (es decir, mediante la creación de un entorno/cierre de la clase "replot", que almacena toda la información necesario para crear un diagrama de gráfico).

## Create an example plot 
getSymbols("YHOO") 
myChob <- chart_Series(YHOO) 

## Plot it, with its default xlim and ylim settings 
myChob 


## Get current xlim and ylim settings for `myChob` (chob = chart object) 
myxlim <- myChob$get_xlim() 
myylim <- myChob$get_ylim() 

## Alter those limits 
myxlim <- c(1, 2000) 
myylim[[2]] <- structure(c(0, 50), fixed=TRUE) 

## Use the setter functions in the myChob environment to set the new limits. 
## (Try `myChob$set_ylim` and `ls(myChob$Env)` to see how/where these are set.) 
myChob$set_ylim(myylim) 
myChob$set_xlim(myxlim) 

## Plot the revised graph 
myChob 
+0

perfecto. A continuación, la perspectiva de cómo hacerlo. – Samo

+0

Gracias! El código chart_Series() es bastante difícil de leer, por lo que es genial ver algunos ejemplos como este. ¿Qué significa 'fixed = T'? 'fixed = F' falla para myylim [[2]], tiene que ser cierto; pero para cambiar 'myxlim' parece que puede ser verdadero o falso. ¿Qué es myylim [1]? Veo que jugar con él parece mover el título, pero nuevamente corregido puede ser verdadero o falso. –

Cuestiones relacionadas