2012-02-05 24 views
5

Acabo de comenzar a jugar con el paquete quantmod. La documentación es, sin embargo, bastante escasa (quizás comprensible, ya que es OSS).Opciones de formato quantlock barChart (o chartSeries)

Actualmente estoy usando barChart(), que es un buen contenedor alrededor de chartSeries() y hace la mayor parte de lo que quiero, pero el gráfico predeterminado que produce no es exactamente lo que quiero. Para ser específico, quiero ajustar los gráficos producidos por barChart() para satisfacer mis necesidades. Sin embargo, como soy un novato, no sé si mis "ajustes" se pueden proporcionar como opciones al wrapper barChart(), o si necesito llamar a chartSeries() directamente, con argumentos específicos.

he estado rompiendo mi pelo a cabo tratando de hacer lo siguiente:

  1. reemplazar el terrible {fecha de inicio}/{fecha de finalización} texto en la parte superior derecha de la gráfica producida por barChart() con el texto de mi elección

  2. especifique el formateado que se utilizará en el eje X (por ejemplo, muestre solo los dos últimos dígitos del siglo, es decir, '98, '99, '00, '01, etc.)

  3. 'Forzar' tanto el gráfico superior como el inferior a hav e sus valores Y impresos en el lado izquierdo de la tabla

  4. Añadir una serie adicional a la tabla inferior

  5. utilizar diferentes a los colores/abajo para el gráfico inferior (por defecto el uso de la misma hacia arriba/abajo colores para ambos gráficos superior e inferior)

  6. Parcela simplemente el gráfico de la parte superior (no gráfico inferior)

  7. Especifique eje X, y de la rejilla eje separaciones de línea para el gráfico superior, para la carta inferior

  8. Escribe la imagen en una salida alternativa (p. png image o documento pdf) en lugar del dispositivo gráfico

¿Alguien puede ayudarme con alguna (o todas) las anteriores?

+0

Tengo que decir que me enojo mucho cuando personas anónimas, que generalmente han contribuido poco a la comunidad, critican a FOSS. Dicho esto, Quantmod es uno de los paquetes mejor documentados (en el paquete y en el sitio), lo que no quiere decir que no se pueda mejorar. –

+0

@JoshuaUlrich: entiendo (y comparto) su opinión. Mi pregunta no fue una crítica (aunque puedo ver cómo puede interpretarse como una). Soy un gran admirador de OSS, y aunque no he aportado nada a R (todavía), he contribuido con código y dinero a muchos proyectos de OSS que utilizo regularmente (PostgreSQL y zeroMQ son dos que me vienen a la mente). –

+0

Puede encontrar http://stackoverflow.com/questions/8815697/r-quantmod-multiple-charts-all-using-the-same-y-axis también útil. (Especialmente con respecto a su número 5, ya que al usar dos llamadas a chartSeries, definitivamente puede controlar los colores). –

Respuesta

5
  1. Esta funcionalidad no está disponible (se aceptan parches).
  2. Esta funcionalidad no está disponible (se aceptan parches).
  3. Esta funcionalidad no está disponible (se aceptan parches).
  4. Consulte la documentación dispersa para ?addTA, específicamente el argumento on.
  5. Trace el gráfico inferior como dos series arriba/abajo separadas, usando dos colores diferentes, o quizás chartTheme.
  6. No estoy seguro de lo que quiere decir; simplemente no trazar el gráfico inferior ...
  7. Consulte la documentación dispersa para el argumento major.ticks al chartSeries. No creo que pueda cambiar los espaciamientos de línea de la cuadrícula del eje y, y el espaciado del eje x será el mismo para el gráfico superior e inferior.
  8. Ver ?png y ?pdf.
2

Para cambiar o quitar el gráfico inferior, comprobar el argumento TA de chartSeries función (hay un ejemplo en el manual); para cambiar los colores, compruebe el argumento theme (hay un ejemplo en el manual); para escribir en un archivo png o pdf, utilice las funciones png o pdf, como con otras funciones de trazado.

para afinar los ejes y las etiquetas, es probable que sea más fácil de pasar por alto chartSeries por completo y trazar los datos usted mismo, con los gráficos de base, celosía o ggplot2.

+1

El problema con eludir ChartSeries es que algunas funcionalidades muy útiles (como las velas) no están en ningún otro paquete (AFAIK). –

Cuestiones relacionadas