¿Cómo obtengo estas dos dispersiones en el mismo gráfico para comparar?
Frecuentes
Visto 149 veces
0
En este momento, el fragmento R que estoy usando es:
a <- read.table('A.out')
a <- cbind(1:nrow(a), a)
colnames(a) <- c('Observation','Time')
med.a <- median(a$Time)
plot(a$Observation, a$Time, xaxt="n", yaxt="n", xlab="",
ylab="", type="b", col="red", pch=19)
abline(med.a,0, col='red', lty=2)
grid(col='darkgray', lty=1)
#Overlay Someone else
b <- read.table('B.out')
b <- cbind(1:nrow(b), b)
colnames(b) <- c('Observation','Time')
par(new=TRUE)
med.b <- median(b$Time)
plot(b$Observation, b$Time, xaxt="n", ylab="units", type="b", col="blue", pch=19)
abline(med.b,0, col='blue', lty=2)
Pero esto no tiene en cuenta las diferencias de escala. (es decir, incluso si los valores de A.out son mucho mayores que los valores de B.out, se mostrarán en la misma escala y... ¿cómo obtengo el efecto deseado para poder compararlos?)
Aquí está el contenido de mi A.out y B.out:
> a
Observation Time
1 1 11758000
2 2 10523000
3 3 10306000
> b
Observation Time
1 1 133721740000
2 2 133759475000
3 3 133724604000
2 Respuestas
4
Estas llamando plot
dos veces. Cada llamada establece un nuevo sistema de coordenadas. En su lugar, utilice una llamada para plot
para configurar los ejes y el sistema de coordenadas, luego use lines
para trazar los puntos reales:
xrange <- range(c(a$Observation, b$Observation))
yrange <- range(c(a$Time, b$Time))
plot(0, type="n", xlim=xrange, ylim=yrange)
lines(a$Observation, a$Time, type="b", col="red", pch=19)
lines(b$Observation, b$Time, type="b", col="blue", pch=19)
Desde aquí, debería poder agregar otras cosas según lo necesite, como líneas medianas, etiquetas de eje, etc.
Respondido el 12 de junio de 12 a las 20:06
0
Deberías agregar esto dentro ambas llamadas de la trama:
..., xlim=range(c( a$Observation, b$Observation )),
ylim= range(c( a$Time, b$Time )), ...
Respondido el 12 de junio de 12 a las 20:06
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas r scatter-plot or haz tu propia pregunta.
Nuestros archivos
'A.out'
y'B.out'
no son los mismos que los suyos, por lo que su código no es reproducible. ¿Podría proporcionar algunos datos que funcionen en las computadoras de otros? - Josh O'Brien