Рассмотрим следующий пример:Использование учебных лет в качестве оси х Этикетки
library(ggplot2)
library(dplyr)
set.seed(30)
data <- data.frame(group = factor(1:11),
year = c(rep("2013-2014", times = 11),
rep("2014-2015", times = 11),
rep("2015-2016", times = 11),
rep("2016-2017", times = 11)),
value = runif(44),
stringsAsFactors = FALSE)
data$plot_year <- as.Date(paste0("01/01/", substr(data$year, start = 1, stop = 4)),
format = "%m/%d/%Y")
ggplot(data, aes(x = plot_year, y = value, color = group)) +
geom_point() +
geom_line(linetype = "dotted") +
geom_line(data= data %>%
filter(as.numeric(substr(plot_year, start = 1, stop = 4)) < 2015),
aes(x = plot_year, y = value, color = group)) +
theme_bw()
Как видно выше, 2013
в оси х соответствует с 2013-2014
, 2014
соответствует 2014-2015
, и так далее.
Как использовать эти метки осей, то есть 2013-2014
, 2014-2015
и т. Д. - вместо текущих меток оси X? Каждое решение, которое я нашел в Интернете, сказал, что использует as.Date()
в какой-то форме или форме, но это академические годы, а не фиксированная дата.
Почему бы просто не использовать 'year' (что учебный год в вашем примере) в качестве переменной х? – eipi10
Кроме того, вы можете сократить код создания данных: 'year = rep (paste0 (2013: 2016,« - », 2014: 2017), each = 11)'. – eipi10
@ eipi10 Может быть, я что-то пропустил здесь, но используя 'year' вместо' plot_year' для эстетики 'ggplot', опускает' geom_line'. – Clarinetist