Упрощенный способ заказа участка facet_wrap по годам - PullRequest
0 голосов
/ 11 ноября 2018

У меня есть данные о весе за 20 лет, и я хочу сделать рисунок facet_wrap 10 строк на 2 столбца с помощью ggplot2. Проблема в том, что я хочу изменить порядок граней таким образом, чтобы у меня были первые десять лет в левой колонке и последние 10 лет в правой колонке.

Я мог бы переупорядочить уровни вручную, как предлагалось в других постах, но это довольно болезненно. Кроме того, мне придется снова изменить порядок уровней, если я хочу сделать то же самое, но с разными годами.

Есть ли более простой способ? Вот пример, чтобы проиллюстрировать, о чем я говорю:

sub.data$year = factor(sub.data$year, 
                       levels = c(2000,2005,2001,2006,2002,2007,2003,2008,2004,2009...))

ggplot(data = sub.data, aes(x = sub.data$weight)) +
  geom_histogram() + facet_wrap(~ year, ncol = 2)

Спасибо

1 Ответ

0 голосов
/ 11 ноября 2018

Я думаю, вам нужно dir = "v".

library(tidyverse)

df <- data.frame(year = rep(2001:2020, 5), x = runif(100), y = runif(100))

ggplot(df, aes(x, y)) +
  geom_point() +
  facet_wrap(~year, ncol = 2, dir = "v")

Создано в 2018-11-11 пакетом Представления (v0.2.1)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...