Нарисуйте составной бар на основе столбцов в R - PullRequest
0 голосов
/ 27 апреля 2019

Предположим, у меня есть следующий фрейм данных:

x = c(10,11,12,13)
x1 = c(0.50,0.55,0.58,0.62)
df <- data.frame(debt= c(0,1,2,3), x = x, x1 = x1, x2 = x-x1)

Как я могу нарисовать диаграмму, подобную следующей?

enter image description here

1 Ответ

1 голос
/ 27 апреля 2019

Например, вот так:

library(ggplot2)
df2 <- reshape2::melt(df, id.vars = c("debt","x"))

ggplot(df2, aes(x = debt)) +
  geom_col(aes(y = value, fill = factor(variable, levels = c("x2","x1"))), width = 0.5) +
  geom_line(aes(y = x, colour = "steelblue"), size = 3) +
  scale_fill_manual(values = c("x1" = "darkorange", "x2" = "grey50"), name = "") +
  scale_colour_identity(guide = "legend", name = "", labels = "x") +
  scale_y_continuous(name = "x", expand = c(0,0,0.2,0)) +
  theme_minimal()

enter image description here

...