BarGraph с первичной и вторичной осью в r - PullRequest
0 голосов
/ 10 февраля 2020

У меня есть фрейм данных, для которого я хотел бы создать гистограмму с первичной и вторичной осями.

geom_bar(data=top_ten_S, aes(x=Combination, y=AvgTopline), stat="identity",fill="red") +
  coord_flip() +
  geom_text(
    data=top_ten_S,
    aes(
      x=Combination, y=AvgTopline,
      label=paste0("R",round(AvgTopline,0)),
      hjust=ifelse(AvgTopline < max(top_ten_S$AvgTopline) / 1.5, -0.1, 1.1), # <- Here lies the magic
    ),
  ) 

мой df выглядит как

top_ten_S <- data.frame(Combination = c("a", "b", "c"),
                    Nrcustomers = c(20, 200, 1900),
                    AvgTopline = c(1000,3000,1500))

Я могу построить только один столбец с приведенным выше кодом - я хотел бы на вторичных осях, чтобы я мог построить Комбинацию против NrCustomers и AvgTopline в

1 Ответ

1 голос
/ 10 февраля 2020

Метод 1

top_ten_S %>% 
  gather(key, value, -Combination) %>% 
  ggplot(aes(x = Combination, y = value, fill = key)) +
  geom_bar(stat = "identity", position = "dodge") +
  labs(fill = "")

Метод 2

top_ten_S %>% 
  gather(key, value, -Combination) %>% 
  ggplot(aes(x = Combination, y = value, fill = key)) +
  geom_bar(stat = "identity", position = "dodge", show.legend = FALSE) +
  facet_grid(. ~ key)

Редактировать: Метод 2

top_ten_S %>% 
  gather(key, value, -Combination) %>% 
  ggplot(aes(x = Combination, y = value, fill = key)) +
  geom_bar(stat = "identity", position = "dodge", show.legend = FALSE) +
  facet_grid(. ~ key, space = "free_y", scales = "free_y") +
  theme(axis.text.x = element_text(angle = 60))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...