Функция as_factor
позволяет forcats
упорядочивать уровни по мере их появления, вместо того, чтобы сначала указывать все, которые начинаются с "1", затем все, которые начинаются с "2" и т. Д. Это уклоняется от проблемы с наличием месяцев от 1 до12.
Я составил разные данные только для того, чтобы получить полный набор меток месяца.
library(dplyr)
library(ggplot2)
set.seed(1234)
df <- data_frame(mylabel = paste("month", 1:12),
value = rnorm(12),
time = 1:12)
df_fact <- df %>%
mutate(mylabel = forcats::as_factor(mylabel))
levels(df_fact$mylabel)
#> [1] "month 1" "month 2" "month 3" "month 4" "month 5" "month 6"
#> [7] "month 7" "month 8" "month 9" "month 10" "month 11" "month 12"
ggplot(df_fact, aes(x = time, y = value, color = mylabel)) +
geom_point(size = 7)
Вы можете дополнительно настроить цветовую шкалу для одногоэто лучше подходит для последовательных данных.Я часто использую Color Brewer, но также люблю некоторые весы rcartocolor
.В этом случае наличие 12 уровней максимально увеличит количество цветов, доступных во многих последовательных палитрах, хотя шкалы Viridis, которые поставляются с ggplot2
(например, scale_color_viridis_d
), будут интерполироваться, чтобы соответствовать этому множеству уровней.
Создано в 2018-11-30 пакетом Представление (v0.2.1)