Label the tops, bump labels up to avoid other labels, then to the side to avoid collisions with points.
top.bumptwice(d, debug = FALSE, ...)
d
debug
...
Toby Dylan Hocking