I think you could add a layer like + geom_text(aes(label = avg_amt_of_calories)) and optionally tweak the text's appearance using parameters like size, family, hjust, vjust, angle, etc. It looks like your data already has the values calculated, so it doesn't look like it would be necessary to perform any additional summary statistics.