Your w and kx are vectors and would be interpreted as being in the x and y position slots of the call to image() that is made. Your ky is a vector and would be interpreted as being in the C (color information) slot in the call to image(). Your absolute is a 3D array and would be interpreted as being in the clim slot in the call to imagesc() . However, imagesc() notices that the value there is not a vector of 2 elements and so does not recognize it as being intensity limits, and so just passes it as data to image(). image() then complains because it has been passed too many numeric inputs.
This is not just a matter of you needing to drop one of the inputs: image() and imagesc() and imshow() can never handle 3D volumes such as your absolute array is.