For real elements of X in the domain [-1,1], asin(X) is in the range [-Pi/2, Pi/2]
So... you will never get the equivalent of 225 degrees (but expressed as radians) out of asin(). You will need to do quadrant correction yourself.
Also, consider: if theta = arcsin(imag(a)/r) then sin(theta) = imag(a)/r, and since sin(theta) = y/r (provided that the same radius is intended), then the r cancel and y = imag(a). If those radius do mean the same thing, then perhaps it would make sense to express your coordinates as cartesian (possibly converting to polar using cart2pol() if you specifically want a polar plot.)