I found myself confused by ggsave not accepting the res argument.
ggplot()
ggsave("p.png", res = 300)
Error in grDevices::png(..., res = dpi, units = "in") : formal argument "res" matched by multiple actual arguments
Luckily, user Roland's comment in this thread helped. I decided to ask a new question because editing the former to the core of the problem seemed more work.
A closer look into ?ggsave might have helped too.