2009-12-09 30 views
7

Tengo múltiples conjuntos de pares xy que quiero trazar. Quiero que cada conjunto de pares xy esté conectado por una línea. En otras palabras, el objetivo es tener múltiples instancias experimentales, cada una aproximada por una línea trazada en un gráfico. ¿También cómo colorearé las líneas de manera diferente?Trazar múltiples conjuntos de puntos en R

La función plot hace lo que yo quiero, pero adquiere un conjunto de pares xy: plot(x, y, ...)

Se puede hacer esta función para tomar múltiples conjuntos o hay otra función para la que?

Respuesta

9

Para hacer esto con el comando de trazado normal, normalmente crearía un trazado y luego agregaría más líneas usando la función lines().

De lo contrario, puede usar celosía o ggplot2. He aquí algunos datos:

df <- data.frame(a = runif(10), b = runif(10), c = runif(10), x = 1:10) 

Usted puede utilizar xyplot() de celosía:

O geom_line() en ggplot2:

library(ggplot2) 
ggplot(melt(df, id.vars="x"), aes(x, value, colour = variable, 
     group = variable)) + geom_line() + theme_bw() 

He aquí otro ejemplo incluyendo puntos en cada par (de this post on the learnr blog):

library(lattice) 
dotplot(VADeaths, type = "o", auto.key = list(lines = TRUE, 
    space = "right"), main = "Death Rates in Virginia - 1940", 
    xlab = "Rate (per 1000)") 

Y la misma parcela usando ggplot2:

library(ggplot2) 
p <- ggplot(melt(VADeaths), aes(value, X1, colour = X2, 
      group = X2)) 
p + geom_point() + geom_line() + xlab("Rate (per 1000)") + 
     ylab("") + opts(title = "Death Rates in Virginia - 1940") 
+0

Recibo un error: Error: No se pudo encontrar la función "gráfico de puntos" ¿Necesito algo de CRAN a usar esto? – hekevintran

+0

Bien, veo las llamadas a la biblioteca ahora. ¡Gracias por tu respuesta! – hekevintran

Cuestiones relacionadas