Здесь нет реальной необходимости в гранях, кроме эстетики (см. Ответ @ LAP), но если вы настаиваете на использовании фасетов, вы можете сделать
ggplot(df, aes(x = Category, y = Age)) +
geom_point() +
ggtitle('Distribution of Player Age By Category') +
facet_wrap(~ Category, scales = "free_x")
Что более важно, никогда не используйте $
(индексация столбцов) внутри aes
. Это может привести к очень неожиданному поведению , особенно при использовании фасетов.