viernes, 7 de agosto de 2009

Múltiples archivos de gráficos

El otro día comentaba los múltiples formatos para guardar un gráfico generado por R (ver Devices).
Por ejemplo, en el caso de pdf(), una vez abierto, todos los gráficos producidos se guardan en el mismo archivo, hasta que lo cerremos. Pero ¿como podemos guardar cada gráfico en un archivo diferente? Pues con

pdf(onefile=F)

Esto llevará a escribir diferentes archivos del tipo Rplot001.pdf, Rplot002.pdf,...

Otros parámetros controlan el nombre del archivo y los dígitos. Para ver todas las opciones leer atentamente el help(pdf). No olvidemos cerrar el dispositivo con dev.off().

Por otra parte, en Windows, una vez que tenemos un gráfico en su ventana, lo podemos guardar a través del menú de la ventana en cualquier formato o incluso en el portapapeles. Sin embargo, en Linux es posible que no tengamos ese menú (en RKWard sí). La función savePlot() soluciona este inconveniente:

savePlot("MiFigura", type="png")

Otros formatos y posibilidades se pueden consultar en la ayuda de esta función.

5 comentarios:

  1. Hey que buen blog, interesantes posts, sobre todo la de boxplot!, también tengo un blog de R, a ver si te das una vuelta cuando tengas tiempo:

    http://using-r-project.blogspot.com/

    Saludos :)

    ResponderEliminar
  2. Hola R user,

    He visitado tu blog y te he dejado un comentario de saludo y una propuesta de colaboración.

    Un abrazo.

    Paco

    ResponderEliminar
  3. Hola Paco,

    Ya leí tu comentario, me parece excelente idea, me llamo Carlos y soy mexicano, soy actuario, entonces como podrás imaginar eso de la estadística es lo mío, estaré en europa todo un año, pero que te parece si te dejo mi dirección de email (cnieves7@yahoo.com.mx) para seguir platicando respecto a tu propuesta, me parece excelente la idea.

    Espero noticias tuyas,

    Carlos (R user)

    ResponderEliminar
  4. Hola a todos, y antes de nada me gustaría felicitarte por el blog. No se si debo escribir aquí el comentario, pero mi pregunta va relacionada sobre el dibujo de gráficos en R.
    Mi problema es el siguiente: debo leer una serie de notas de un fichero.csv. A continuación debería representar estos valores en una gráfica y después almacenar esta en un pdf.

    En mi variable "fichero" una vez que he leido fichero.csv tengo lo siguiente:

    > fichero
    V1
    1 3;5;6;7
    2 7;6;8;9
    3 5;4;3;4
    4 1;1;1;0


    El problema es que cada fila de esa matriz correspondería al valor "y" de mi par que quiero representar en la gráfica, y si es la fila 1, el valor "x" sería 1 para todos los valores de esa fila. En resumen, para el ejemplo de arriba -> yo en mi gráfica quiero representar estos valores:

    (1,3) (1,5) (1,6) ...(2,7)

    Quizá os suene raro todo esto, pero en realidad es que esto lo estoy implementando dentro de java. Pero primero necesito saber como hacerlo en R, y estoy un poco perdida porque nunca he trabajado con este programa. Muchas gracias y espero haberme explicado bien. Un saludo.

    ResponderEliminar
  5. Hola, necesito de vuestra ayuda. Mi caso es el siguiente: tengo un data frame que contiene 3 columnas de datos (variables): X (peso), Y(altura), Z (indicadora de estudiante). A cada uno de los 10 estudiantes de la muestra se le midió peso y altura en 5 tiempos diferentes, por tanto tengo 50 observaciones. Así (datos ficticios):
    X Y Z
    12 20 1
    14 22 1
    15 22 1
    18 23 1
    20 24 1
    11 20 2
    13 21 2
    15 22 2
    17 23 2
    20 25 2
    ...
    ...

    ¿Qué comandos debo usar para obtener 5 gráficos de dispersión (una por cada estudiante) y que aparezcan en una sola ventana gráfica?
    Gracias de antemano por su respuesta.


    ResponderEliminar