Dibujando círculos en R

Estoy usando el paquete plotrix para dibujar círculos.

Y no entiendo lo que está mal con mi código ... :-(

Tengo tres puntos. El primer punto(1,1) Debería ser el centro del círculo. Los dos puntos siguientes(1,4) y(4,1) tienen la misma distancia / radio al centro. Entonces el círculo en la trama debería pasar por estos puntos, ¿verdad?

Y no sé por qué el círculo se ve mal. ¿Hay una explicación?

  p1 <- c(1,1)
  p2 <- c(4,1)
  p3 <- c(1,4)
  r <- sqrt(sum((p1-p2)^2))

  plot(x=c(p1[1], p2[1], p3[1]),
       y=c(p1[2], p2[2], p3[2]), 
       ylim=c(-5,5), xlim=c(-5,5))
  draw.circle(x=p1[1], y=p1[2], radius=(r))
  abline(v=-5:5, col="#0000FF66")
  abline(h=-5:5, col="#0000FF66")

Echa un vistazo a la salida producidaaquí

Respuestas a la pregunta(1)

Su respuesta a la pregunta