Не уверен, что вы подразумеваете под лучшим способом, но я думаю, вы могли бы сделать
library(ggplot2)
df <- data.frame(x = sample(1:20, 100, replace=TRUE))
ggplot(df, aes(x)) + geom_bar()
Или использовать его напрямую
ggplot(data.frame(x = sample(1:20, 100, replace=TRUE)), aes(x)) + geom_bar()