Я пытаюсь сделать график с несколькими линиями и хочу контролировать порядок их рисования, чтобы одни линии оказывались поверх других. Например, в приведенном ниже коде B отображается поверх A. Я могу изменить это, переназначив уровни факторов group
, но это также изменит другие аспекты графика, такие как цвета каждой линии и порядок группы в легенде. Есть ли способ напрямую управлять порядком построения линий независимо от чего-либо еще, возможно, с помощью эстетики?
library(ggplot2)
df <- data.frame(
group=rep(c("A", "B"), each=2),
x=c(0,1,0,1), y=c(0,1,1,0))
ggplot(df) +
aes(x=x,y=y,color=group) +
geom_line(size=3)
Существует справочная страница ggplot2 под названием aes_group_order
, но начиная с версии 2.1.0 она не упоминает об эстетике порядка. Похоже, что порядок был упомянут на странице руководства для старой версии, но это поведение на самом деле не задокументировано, только продемонстрировано некоторыми малоинформативными примерами.
(Редактировать: согласно примечаниям к выпуску ggplot2, " Эстетика order
официально объявлена устаревшей. Она никогда не работала и была плохо задокументирована.")