Согласно моему комментарию.Только что проверил, это работает, но вы должны указать параметр 'stat' в geom_histogram:
require(ggplot2)
freq = c(1,2,2,3,3,3,4,4,4,4,5,5,5,5)
ggplot(data=as.data.frame(freq), aes(x = freq >=4)) + geom_histogram(stat = 'count')
Если вы хотите сгруппировать по значению, вы можете создать 'сокращения', как показано здесь
Вы также можете создавать разрезы непосредственно в ggplot:
ggplot(data=as.data.frame(freq), aes(x = cut(freq, c(1,2,3), include.lowest = TRUE))) +
#you need to make sure that the cuts actually represent the intervals you want!!
geom_histogram(stat = 'count')