# A Study of Colormaps in Network Visualization
## 3 User Study
### Experimental Design
#### 3.1.4. Colormaps  
There are many categories of colormaps, such as sequential, categorical, diverging, and cyclic, where each category includes multiple colormaps. Due to their volume, it is impractical to evaluate all colormaps. For this study, we selected four representative colormaps from the sequential, diverging, and miscellaneous categories, as defined in Matplotlib [44]. Our selection process was based on a recent colormap evaluation study [24]. We selected two sequential colormaps (_blue, viridis_), one diverging colormap (_RdYBu_), and one rainbow colormap (_jet_). For quantitative data, sequential colormaps are often used ahead of other types. Single-hue sequential colormaps (e.g., _blue_ in Figure 1a) are arranged from high to low to encode increasing numeric values. These primarily represent the values with a linear ramping in the luminance [25] and are used to represent information that has an order. High data values are represented by dark colors and low values by light colors [22]. Light-to-dark progression dominates the scheme, as studies have shown that dark colors contain more bias. People inferred that the dark color represents higher or larger values and light color represents low values respectively. Studies show that the human visual system supports the discrimination of higher spatial frequencies in the luminance channel [45]. Similarly, multi-hue sequential colormaps are used to encode increasing numeric values, additional ramping in hues and luminance is used together for better color discrimination. A new perceptually uniform color model, the _viridis_ colormap (Figure 1c), and its variants [46] is frequently used in visualization tools. These colormaps are perceptually graded by both hue and luminance ramping so that the amount of color change in each color step appears consistent. In contrast to sequential colormaps, diverging colormaps (e.g., _RdYIBu_ in Figure 1b) are used to encode quantitative values between two contrasting colors at either end with a neutral mid-point, such as zero or the average value. Divergent colormaps are best suited when there is a well-defined reference (midpoint) in the data. They are used to compare data values to a reference (midpoint) value in a manner that visually highlights whether values are above or below the reference. Color ramps with different hues diverge with increasing saturation to highlight the values below and above the mid-point [47]. Rainbow colormaps (e.g., _jet_ in Figure 1d) have been used frequently in many visualization designs. However, recent studies show that rainbow colormaps have several limitations, especially for mapping ordinal data, as they lack perceptual ordering [48; 49; 50]. Furthermore, they are not suitable for colorb blind users [49]. A lack of perceptual ordering and uncontrolled luminance variation can be misleading for data interpretation [48]. Most existing studies used colormaps in an isolated setting, not in a real visualization. In addition, the evaluation of colormaps has not been applied in any kind of network visualization technique. In the pilot study, we used eight colormaps: sequential (_grey_, _blue_, and _YGnBu_), perceptually uniform (_viridis_, _inferno_, and _magma_) with diverging (_RdYIBu_) and rainbow (_jet_) colormaps for comparison. Having eight colormaps along with the other factors (i.e., datasets, node attributes, and spans) was a lot to ask from the participants. With eight colormaps, participants felt fatigued and lost their interest during the study. A previous study [24] regarding the comparative study of different colormaps showed that _viridis_ (multi-hue, sequential) and _blue_ (single-hue, sequential) outperformed other colormaps in terms of reaction time and error rate. Thus, we selected the two sequential colormaps to compare with a diverging and a rainbow colormap. We used _blue_ (single-hue, sequential), _viridis_ (multi-hue, sequential), _RdYIBu_ (diverging), and _jet_ (rainbow) for our user study.