У меня есть dataframe, подобный следующему:Как определить порядок построения строк в ggplot2 для сгруппированных строк?
set.seed(1)
df = data.frame(group = sort(rep(1:15,5)), x = rep(1:5,15),
y = c(runif(25,-1,1), runif(25, -.5,.5),runif(25,-1,1)),
flag = c(rep('false', 25), rep('true',25),rep('false', 25)))
, где х и у координаты для построения, группа является идентификатором для различных линий, и флаг представляет собой логическое значение, указывающее специальное подмножество групп линий. Я хотел бы использовать ggplot для построения этих строк, чтобы линии с flag = 'true'
отображались сверху. Однако порядок построения графика, по-видимому, определяется только именем группы. В моем примере df, поскольку значения с flag = 'true'
соответствуют группам 6-10, они отображаются над группами 1-5, но ниже групп 11-15. Это происходит, даже если я пытаюсь использовать order
эстетическими следующим образом:
ggplot(data = df, aes(x = x, y = y, colour = flag,
group = group, order = flag)) + geom_line(size = 3)
Я могу получить заказ построения графиков я пожелаю, если переименовать метки группы (например, если примеры с flag = true
представляют собой группы 11 -15 вместо 6-10), но я бы предположил, что есть лучший способ сделать это. Есть ли способ переопределить порядок по имени группы?
Попробуйте посмотреть на 'geom_path' –