Tengo problemas para agregar una línea vertical a un trazado cuando el eje x es un objeto datetime (POSIXct
). Parece que siempre quiere poner la línea en la Época. He aquí un ejemplo:ggplot línea vertical con el eje de fecha
df <- data.frame(x=ymd('2011-01-01')+hours(0:24), y=runif(25))
ggplot(df, aes(x=x,y=y)) + geom_point()
Ahora intento agregar una línea en el tercer tiempo de observación:
ggplot(df, aes(x=x,y=y)) + geom_point() + geom_vline(aes(x=df$x[3]))
algo que estoy haciendo mal?
Gracias. Parece que 'xintercept' falta en la lista de estética en los documentos ggplot, y la verborrea habla de' x' en su lugar. =/ –
Sí, eso me sorprendió a mí también. Los documentos en http://had.co.nz/ggplot2/geom_vline.html dicen usar 'aes (x = whatever)', pero todos los ejemplos a continuación usan 'xintercept' – Andrew
usando exactamente @KenWilliams ejemplo I get> ggplot (df, aes (x = x, y = y)) + geom_point() + geom_vline (xintercept = df $ x [3]) Error: tipo de interceptación no válida: debería ser un vector numérico, una función o un nombre de un función. ¿Algunas ideas? –