Я хотел бы создать многогранный график на основе данных панели. Хотя графическое представление данных панели только с одной переменной y относительно просто, я спрашиваю, как я могу создать график в R, используя несколько переменных y, которые должны отображаться на одном графике. Проблема в том, что у меня два "у". Каждый ggplot имеет (...aes(x=year, y=something, ...)
, но у меня есть два «у», а именно source1 и source2, и я не могу найти решение для создания многогранного графа, который содержит обе y-переменные в одном фасете. Пожалуйста, смотрите описание панели данных ниже. Данные панели, которые я хочу отобразить в R, выглядят так:
structure(list(id = c(46L, 46L, 46L, 113L, 113L, 113L, 238L,
238L, 238L, 2224L, 2224L, 2224L, 5557L, 5557L, 5557L, 757L, 757L,
757L, 8890L, 8890L, 8890L, 33335L, 33335L, 33335L, 48L, 48L,
48L, 115L, 115L, 115L, 240L, 240L, 240L, 2226L, 2226L, 2226L,
5559L, 5559L, 5559L, 1478L), area = structure(c(1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L), .Label = c("Australia and New Zealand", "Brazil",
"Canada", "China", "India", "United States of America"), class = "factor"),
Я создал данные панели в R:
panel <- pdata.frame(data, index = c("id", "year"), drop.index = FALSE)
Затем я попробовал этот график в ggplot:
geom_area() +
scale_fill_viridis(discrete = TRUE) +
theme(legend.position="none") +
ggtitle("Yield") +
theme_ipsum() +
theme(
legend.position="none",
panel.spacing = unit(0.1, "lines"),
strip.text.x = element_text(size = 8),
plot.title = element_text(size=14)
) +
facet_wrap(~item)
однако он не отображает фасеты в области, а затем внутри каждого фасета значения значений source1 и source2 для каждой культуры. Я хотел бы создать что-то вроде этого:
Проблема становится еще более сложной, потому что у меня много измерений: площадь, предмет, годы и эти два у-переменные: источник1 и источник2. Наиболее важным является создание фасетов, которые показывают, что source1 и source2 отображаются в виде линий или полос для сравнения. Но проблема в том, как создать фасеты, которые показывают эти две переменные y по году, площади и элементу? И все это без создания переполненного графа.
Поскольку dc27 запросил примеры графа, другим возможным примером будет:
где source1 и source2 должны быть 2 бара рядом, показывая значения за год, за элемент и за область. Если у вас есть какие-либо другие предложения о том, как нанести на график данные панели, вы более чем приветствуем.