ggplot2 сжимает метки и данные при использовании: scale_x_discrete (limit = c ()) - PullRequest
0 голосов
/ 08 мая 2020

Итак, у меня есть этот график:

Graph with default labels

Но я хотел бы добавить соответствующие метки на ось x, чтобы каждый столбец имел метку. Для этого я использовал scale_x_discrete(limit = as.character(2008:2017)), однако это дает следующий результат:

graph with scale_x_discrete(limit)

Как вы можете видеть, все метки сдвинуты в одну сторону, а данные бары к другому.

Я что-то не так делаю? или это ошибка?

Вот мой код:

# First image
ggplot(data_melt, aes(x = year, y = value, fill = variable)) +

  geom_bar(position = "fill", stat = "identity") +

  theme(legend.position = "none")

# Second image
ggplot(data_melt, aes(x = year, y = value, fill = variable)) +

  geom_bar(position = "fill", stat = "identity") +

  theme(legend.position = "none") +

  scale_x_discrete(limit = as.character(2008:2017)) 

1 Ответ

0 голосов
/ 08 мая 2020

Ваша проблема с маркировкой связана с типом переменной и не имеет ничего общего с масштабом оси. Попробуйте изменить переменную по оси x с числовой на категориальную:

data_melt$year <- as.factor(data_melt$year)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...