Проверьте
real_pos.x,
real_pos.y и
r.
Они должны быть числами(но не NaN или Infinite) и не строками.
Возможно перед вызовом createRadialGradient можно проверить?
if(!Number.isFinite(real_pos.x)) console.log("invalid real_pos.x");
if(!Number.isFinite(real_pos.y)) console.log("invalid real_pos.y");
if(!Number.isFinite(r)) console.log("invalid r");