// asymptote start
unitsize(30mm);
real angle=40;
draw((0,0)--dir(angle),
     L=rotate(angle)*Label("{$\left(a^{2}+b^{2}\right)^{1/2}$}",
                           position=Relative(0.3),align=N));
draw(1.1*(-1,0)--1.3*(1,0),Arrow,L=Label("{$\Re$}",
        position=Relative(1.1),align=S));
draw(1.1*(0,-1)--1.3*(0,1),Arrow,L=Label("{$\Im$}",
        position=Relative(1.1),align=SE));
draw((Cos(angle),0)--(Cos(angle),Sin(angle)));
 label("{$a+ib$}",dir(angle),E);
 label("{$a$}",(1.4*(xpart(dir(angle))/2),0),S);
 label("{$b$}",(xpart(dir(angle)),ypart(dir(angle))/2),E);
 label("{$\theta$}",0.3*dir(angle/2));
// mark the angle
path alpha=arc((0,0),0.4*dir(0),0.4*dir(angle),CCW);
draw(alpha,linewidth(1));
// asymptote end
