Я пытаюсь ограничить ось X графика несколькими цифрами до текущей недели. Поэтому, если мы сейчас на 45-й неделе, все недели с 1 по 45 должны отображаться, а не с 46-го. Я не могу заставить работать любую команду xlim
, например xlim(1,45)
возвращает ошибку:
Дискретное значение подается в непрерывную шкалу.
Возможно, это связано с тем, что переменная неделя является фактором, но это необходимо для правильного построения графика (без десятичных дробей). Любые решения?
set.seed(1)
dat <- data.frame(object = sample(c("A","B","C","D"),100,replace = TRUE),
week = sample(c(1:52),100,replace = TRUE),
year = sample(c(2016,2017,2018),100,replace = TRUE),
count = sample(c(0:10),100,replace = TRUE))
ggplot(dat, aes(factor(week), count )) +
geom_bar(stat="identity" , aes(fill = factor(year)), position = position_dodge2(width = 0.9, preserve = "single")) +
facet_wrap(~ object, ncol = 2, scales = "free_y") +
labs(x = "Week", y = "Count") +
scale_fill_discrete(name = "Year")
![output for the above data](https://i.stack.imgur.com/1S4Hv.png)