Especificando configurações de gpar para setas de grade em R

Estou desenvolvendo uma plotagem de setas de tamanho proporcional e tenho um fluxo de trabalho para tamanho, direção e tamanho da ponta da seta, mas há alguns problemas com as pontas de seta: 1. eles arredondaram junção de linha e 2. eles não t fechar (ver canto inferior direito) mesmo quandotype='closed'.

require(ggplot2)
require(grid)
d = data.frame(x = 1:10, y = 0, size = 1:10)

ggplot(d, aes(x, y, size = size)) +
  geom_segment(aes(xend = x, yend = y + size), 
               arrow = arrow(length = unit(d$size, "mm"), type='closed')) +
  scale_size(range = c(2, 4))

As setas são baseadas emgráficos de grade, mas não consigo descobrir como especificar a configuração.get.gpar() rendimentos:

$lineend
[1] "round"

$linejoin
[1] "round"

masgpar(linejoin = 'mitre', lineend = 'butt') não muda isso. Existe alguma maneira de alterar essas configurações? Desde já, obrigado.

Editar

Plotar imagem incluindo a seta grid.segments adicionada: