tutorial qplot ggplot espaƱol r charts plot subset

r - ggplot - qplot



Obteniendo resultados diferentes usando las funciones ggplot y base plot (1)

Tengo una tabla disponible aquí: http://ulozto.cz/xAeP3Ahn/res2-txt . Estoy tratando de hacer un argumento de eso.

Leí mi mesa:

res2<-read.table("res2.txt", header = TRUE, sep="/t")

y crea 2 parcelas.

(1) Este es el script para la función de diagrama único:

plot(res2$V2, res2$dist06, type = "n") points(subset(res2$V2, year == 2006), subset(res2$dist06, year == 2006), pch = 19, col = "red", cex = 1) points(subset(res2$V2, year == 2007), subset(res2$dist06, year == 2007), pch = 19, col = "green", cex = 1) points(subset(res2$V2, year == 2008), subset(res2$dist06, year == 2008), pch = 19, col = "black", cex = 1) points(subset(res2$V2, year == 2009), subset(res2$dist06, year == 2009), pch = 19, col = "blue", cex = 1) points(subset(res2$V2, year == 2011), subset(res2$dist06, year == 2011), pch = 19, col = "yellow", cex = 1) legend("topright", c("2006", "2007", "2008", "2009", "2011"), col= c("red", "green", "black", "blue", "yellow"), pch = c(19,19,19,19,19))

(2) y para ggplot2:

res2$year<-as.factor(res2$year) # consider year variable as discrete ggplot(data=res2, aes(x=V2, y=dist06, color=year)) + geom_point(shape=16, pch=50) + xlab("threshold") + ylab("Euclidean distance") + scale_fill_hue(name="year") + # set legend title scale_colour_manual(values=c("red", "green", "black", "blue", "yellow")) + theme_bw()

Aquí están mis resultados:

Mi pregunta es, ¿por qué tengo una posición de puntos diferente en tramas generadas de manera diferente? ¿El problema es solo en diferentes colores y leyendas? Entonces, ¿los "subconjuntos" definidos son incorrectos? ¿Por qué 2006 está marcado como rojo en ambos, pero tiene una posición diferente en el gráfico? lo mismo con 2011 y otros? ¿Dónde estoy equivocado? Gracias por cada recomendación, estoy perdido aquí el tercer día.

Aquí están mis resuls de excel, así que la trama de ggplot2 (2) tiene que ser correcta


Supongo que esto es un efecto secundario de un uso incorrecto del subset . El primer argumento para ello debería ser el marco de datos completo, así:

subset(res2, year == 2006)$V2

o

subset(res2, year == 2006, select = V2)

(Nota al margen: los objetos devueltos por estos comandos son diferentes, pero ambos funcionarán para su trazado)

Yo recomendaría usar una notación de corchetes:

res2$V2[res2$year == 2006]

De cualquier forma, obtendrás una trama correcta:

Como habrás notado, no tienes que copiar / pegar mucho con el enfoque ggplot . ¡Bonito!