Dejo mi version de cambio de color. Con la variante de que en cada cambio de color, aumenta el tamaño del círculo! Me pareció divertido. Espero les guste.
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <canvas width="600" height="400"> </canvas>
    <script>
      var pantalla = document.querySelector("canvas");
      var pincel = pantalla.getContext("2d");
      pincel.fillStyle = "grey";
      pincel.fillRect(0, 0, 600, 400);
      let posColor = 0;
      let radio = 10;
      colores = ["blue", "red", "green"];
      function dibujarCirculo(evento) {
        var x = evento.pageX - pantalla.offsetLeft;
        var y = evento.pageY - pantalla.offsetTop;
        pincel.fillStyle = colores[posColor];
        pincel.beginPath();
        pincel.arc(x, y, radio, 0, 2 * Math.PI);
        pincel.fill();
        console.log(x + "," + y);
      }
      pantalla.onclick = dibujarCirculo;
      function alterarColor() {
        radio+= 1;
        if (posColor < colores.length - 1) {
          posColor += 1;
        } else {
          posColor = 0;
        }
        return false;
      }
      pantalla.oncontextmenu = alterarColor;
    </script>
  </body>
</html> 
            