Complex function with binary operation 
I'm working on a question on complex function with binary operation, it has two parts in the question and I got stuck on part b.
Part a: represent the $∘$ operation in a graphical way.
I have drawn a graph for $z_a∘z_b=R(z_a)+iI(z_b)$ from my understanding. ( am I right?)
I am told that my graph is wrong, below is my new graph.

Part b: consider the set $C$ together with binary operation $∘$ defined by:
$z_a∘z_b=f(z_a,z_b)$, where $f(z_a,z_b)=R(z_a)+iI(z_b)$.
The set $C$ together with the binary operation $∘$ forms a ? ( choose one from the followings)
a) Monoid
b) Semigroup
c) Group
d) Magma
e) Ring
f) Field
$R(z_a)$ is the real part of $z_a$ and $I(z_b)$ is the imaginary part of $z_b$
I know it satisfies closure and associativity such that $f(z_a,f(z_b,z_c))=f(f(z_a,z_b),z_c)$ so it is at least a semigroup.
I'm very uncertain for my answer because by looking on the graph, I think it has identity and inverse elements which suggests it can be field. I don't think it is a ring because it is clearly not an Abelian group ( a$∘$b is not same as b$∘$a).
Any help will be appreciated. Thanks.  
 A: As I mentioned in your comment, your picture is incorrect. However, you can use a similar idea of adding dotted lines to your diagram of $\mathbb{C}$ with the two points. Draw a vertical dotted line through $z_a$ and a horizontal dotted line through $z_b$: the point of intersection of these two dotted lines is $z_a \circ z_b$.
As for what kind of algebraic structure $\left(\mathbb{C}, \circ\right)$ is, the operation $\circ$ is clearly closed, and you're right that it is associative, but there is no identity element (I hope this is easy enough for you to check), and so it is a semigroup.
EDIT: Your new picture is correct, good job. Hope the rest of my answer helps.
In fact, let me throw in the proof that there is no identity element.
Suppose there is, and call it $z$. Take an arbitrary element $z_a \in \mathbb{C}$. Note that $$z \circ z_a = z_a \implies R\left(z\right) + i I\left(z_a\right) = R\left(z_a\right) + i I\left(z_a\right) \implies R\left(z\right) = R\left(z_a\right).$$ In particular, for this to hold for all $z_a$, we would need our identity candidate $z$ to have the same real part as every complex number, which is clearly impossible. 
