Real-valued functions \(f : \R \rightarrow \R\) with real inputs can be easily visualized on a two-dimensional graph. Real-valued complex functions \(f : \C \rightarrow \R\) have two input dimensions and one output dimension, so can be visualized as a three-dimensional surface. Functions \(f : \C \rightarrow \C\) with both complex inputs and complex outputs have four dimensions to consider, making them difficult to visualize directly. One popular visualization technique for complex functions is domain coloring, which uses color to represent the value a function takes at each point in the complex plane. Domain coloring can help us build visual intuition about complex analysis.