As we begin the semester, we have identified the need to revisit some symbology and cartography guidance. Below are some pointers and best practices that could help improve your lab reports and maps. This is more art than science so please view this as broad guidance and not prescriptive. The most important guidance here is to make these choices with intention and a communication purpose. Cartography is a skill that takes time to develop so you will need to work on it to improve.

ArcPro has a wide range of cartography and symbology tools so this is only a small sample of what can be done. Often you will need to think about what you want to show/do and then go looking for how to do it.

LAYOUT CHECKLIST 2

COLORS AND SYMBOLOGY 2

Basemap Choice 2

Related Colors vs Contrasting Colors 3

Layering Features 3

Choosing a color scheme for your data type 4

Color scheme decision tree 4

Nominal Data -> Random color schemes 5

Continuous or ordinal data without a threshold -> Sequential color schemes 6

Continuous or ordinal data with a threshold -> Divergent color schemes 6

How many classes do I need if I am classifying continuous data? 8

How many colors should I have in my color scheme? 8

Two-color scheme 9

Color blind friendly palettes 9

Avoid the rainbow scheme 9

Additional considerations for ordinal or continuous data 10

Stretched vs classified symbology 10

Comparability within your dataset or between multiple datasets or map frames 10

How should I distribute class breaks? 11

How to use Stretch statistics to compare rasters 12

How to manually adjust color schemes in ArcPro 13

MODELS GUIDANCE 14

LAYOUT CHECKLIST

Here are the main items we like to see on the maps you create absent any other specific guidance.

  1. Descriptive title
  2. Your name
  3. Projection/coordinate system that the map uses (this may be different than the projection/coordinate system that was used for the analyses)
  4. North arrow - (don’t include for global maps)
  5. Scale bar
    1. often in nautical miles or km for marine maps
    2. use meters for smaller regions
    3. scale bar shouldn’t be wider than the map frame it applies to so that it could easily be used to measure distances in the frame
    4. by tradition, the scale should end on a round number as below:
      1. if in km: 0.5, 1, 2, 5, 10, 20, 50, 100 are pretty standard
      2. if in meters: 10, 20, 50, 100, 200, 500 are good options
    5. If you are showing a global map - omit the scale bar altogether
  6. Legend
    1. Use descriptive, informative layer names so that anyone can understand what it is referring to
    2. If there are classes or a color ramp
      1. Are there units?
      2. If there aren’t explicit units, are there implied units like “low” to “high”? “less variety” to “more variety”?
  7. Intuitive color choices and clear symbology…see sections below

COLORS AND SYMBOLOGY

Good color choices, symbology, layering, and arrangement of items on the page can get your message across more effectively. Often we iterate over the options to see what works best. Use your judgment – if it doesn’t look good to you, change something to make it better but be intentional about your choices. You should be able to make an argument to justify why you chose to present your data a certain way.

  1. Basemap Choice

  • Simpler is almost always better
  • Unless imagery is helpful/necessary for understanding the data you are presenting, it is often better to use a simpler basemap so that it doesn’t distract from the other data you are trying to show.
  • If you want to use lots of blues in your map, consider using a gray or other neutral color basemap
  • Do you even need a basemap? If you are showing a series of raster surfaces that you used as input variables in a statistical model, a basemap might not be necessary

Using similar colors for multiple features indicates that those features are similar or related in some way. Using contrasting colors indicates that they are different from each other.

  • Avoid using colors that are too similar to other elements in the map unless you want the viewer to think those items are similar – this is confusing when trying to use the legend to identify different layers, or when similar colors are layered on top of each other.
  • If you have two frames showing the same type of data (depth as points and depth as a TIN), use the same color scheme. And vice versa, if two maps are showing different types of data (one is depth and the other is pH), you should use different color schemes to show that they are different.
  • Use brighter colors for things you want to draw attention, and darker or more muted colors (or increase transparency) for background items
  • Avoid using highlighter neon colors on large areas of the map, these should be reserved for point and line features that you really want to draw attention to
  1. Layering Features

  • Changing the transparency, hatching/pattern fill, line thickness can help make elements look different from each other and can allow other layers (like rasters) to be seen underneath
  • Be careful layering multiple transparent polygons on top of each other, this will change their colors making it difficult to interpret. A better option is to symbolize the top layer with only a border, or hatching/pattern, and the bottom layer as solid or transparent

Layering example

Notice the layering of lines, hatched areas and patterned areas on top of a raster layer.

Raster layer uses neutral colors so that it does not compete with all of the other colors used for the layers above it.

  1. Choosing a color scheme for your data type

    Different types of color schemes are used for different types of data. The three types of spatial data we often symbolize are:
    * categorical/nominal - distinct classes which do not have any inherent relationship between them, e.g. sediment types, habitat types
    * ordered categorical/ordinal - e.g. categories for low/medium/high, photic zones
    * continuous/numeric - e.g. depth or population density.
    There are also three main types of color schemes at your disposal in mapping data distributions or categories. These are random, discrete, and continuous color schemes.

  2. Color scheme decision tree

Q1 - Is your data separated into groups or classes?

Yes – go to Q2

No – you have continuous data, go to Q3

Q2 - Is there a relationship between different classes? E.g. Higher/lower, better/worse

Yes – go to Q3

 No – you have nominal/categorical data – use a random color scheme (see section 4.2)

Q3 - Does the range of your data include a threshold value?

Yes – use a divergent color scheme (see sections 4.4, 5.3, 5.5 )

No – use a sequential color scheme (section 4.3), go to Q4

Q4 - Do you want to compare values within your dataset or between multiple datasets? (section 5.2)

 Yes \- Separate your data into discrete classes (sections 4.5, 5.1, 5.3 approach B))

 No \- Either a continuous color stretch or classified color scheme would work (sections 4.6, 5.3, approach A)
Type of Data Color Scheme Type to Use
Categorical/Nominal (not ordered) Random
Ordinal OR Classified Continuous Discrete Sequential (no threshold) Divergent (threshold)
Continuous Continuous Sequential (no threshold) Divergent (threshold)
  1. Nominal Data -> Random color schemes {#nominal-data–>-random-color-schemes}

Your goal: don’t add meaning where there is none

This is the easiest type of data to symbolize because you are not trying to avoid showing any additional relationships between different classes. The different colors simply stand for names or labels.

Examples of nominal data: habitat classification, land classes, EMU codes, unsupervised isocluster classes. See this site for examples of what this looks like: http://colorbrewer2.org/#type=qualitative\&scheme=Accent\&n=6

Example: Nominal data, random color scale

Colors are randomly assigned

Categories have informative names

Gray basemap does not interfere with any of the color choices

  1. Continuous or ordinal data without a threshold -> Sequential color schemes {#continuous-or-ordinal-data-without-a-threshold–>-sequential-color-schemes}

Your goal: your color choice should help you communicate some sort of relationship between different classes—i.e. higher or lower, better or worse, increasing or decreasing. In general, use brighter, warmer colors for higher values and darker, cooler, or more muted colors for lower values.

Examples of data to use with a sequential color scheme: Low income-medium income-high income, older-newer-newest, depth, distance from shore, population. See this website for more examples of sequential color schemes: http://colorbrewer2.org/#type=sequential\&scheme=BuGn\&n=6

Example: Ordinal data, sequential color classes

Sequential color scale indicates that there is an ordered relationship between the classes

Adding a relative scale to the legend by labeling “least variety” and “most variety” helps us interpret the class numbers

  1. Continuous or ordinal data with a threshold -> Divergent color schemes {#continuous-or-ordinal-data-with-a-threshold–>-divergent-color-schemes}

Your goal: you should be able to tell from looking at a map which color is the threshold value and which values are “above” the threshold and which are “below” the threshold without looking at the legend labels.

What is a threshold?

A threshold is a turning point or reference value that you want to be able to compare other values to in your range of data.

Examples of data with thresholds:

  • Data range includes both negative and positive values on the same scale (0 is the threshold)
  • Above or below the average value (the mean is the threshold)
  • Increasing and decreasing values (“no change” is the threshold)
  • Or maybe you want to show whether a concentration is above or below an established regulatory standard (that “standard” is the threshold)

This is the “break point” where your
threshold value should be located
V

The threshold value should be set as the “critical break” color between the two color scales on each side. For example, in the image above the breaks are all located at the half-way point between the two end colors. In reality, you will need to adjust your scale so that your threshold matches up with the break in your chosen divergent color scheme so your break may not be located at exactly 50% (see sections below for info on how to do this).

Check out this link for more examples of diverging color palettes: http://colorbrewer2.org/#type=diverging\&scheme=BrBG\&n=6

Example: Fitting a divergent color scheme to your data

Things to notice:

Use of a divergent color scheme (blue-white-red) with 0 as the threshold color (white = 0)

Can immediately tell that blues and reds are on opposite sides of the threshold

Use of matching breaks on either side of 0 allow for more comparability above and below the threshold

Most of the data is between -2 and 4 m, so there are more class breaks in that range and fewer classes above 4 m

*error note - this is showing “elevation change,” not elevation

####

  1. How many classes do I need if I am classifying continuous data? {#how-many-classes-do-i-need-if-i-am-classifying-continuous-data?}

    Usually if you are creating your own classes, you probably want between 8 and 20 classes. If you have too many classes you cannot tell the difference between the shades of neighboring color classes. Too few classes, you risk oversimplifying your data.

    1. How many colors should I have in my color scheme? {#how-many-colors-should-i-have-in-my-color-scheme?}

      More color is not always better. Only use as many colors as you need to make your message clear.

      Some rules of thumb:

  • The more classes you have, the more colors you might need in your color scheme. If you need more than 10 classes, you probably want to use a 4- or 5- color scheme so that neighboring shades don’t all start to look the same.
  • Avoid using color schemes with lots of different colors (like the rainbow one) unless there is a really compelling reason for it (there probably isn’t). Too many colors and it becomes difficult for the viewer to intuitively grasp the relationship between all the colors.

    Two-color scheme

    Two color schemes are good for showing simple relationships or for display purposes.

    For example, this blue-white scheme might be a good choice if you are using an ocean bathymetry raster just as a nice background, but don’t need to know exactly what depths are shown. Two-color schemes can also work if you are only using a few classes, say 5 or fewer.

Color blind friendly palettes

The developers of the Matplotlib plotting library for Python came up with new color palettes that are now incorporated into software - R, MatLab, and ArcGIS Pro. These have the following benefits:

  • relatively friendly to common forms of colorblindness
  • designed to be perceptually-uniform
  • perceptually-uniform in regular form and also when converted to black-and-white

    http://bids.github.io/colormap/

Viridis

Magma

Avoid the rainbow scheme

It does look pretty but has too many colors and thus loses its ability to impart meaning to the data. Notice how the top and bottom colors on the ramp below are almost the same…that’s not useful for differentiating low and high values.

Rainbow = bad

  1. Additional considerations for ordinal or continuous data

    1. Stretched vs classified symbology

      Stretched symbology is best for highlighting the spatial variability within a single dataset of continuous data. The stretch types (Standard Deviation, Percent Clip, Min/Max etc) are based on the distribution of values within that dataset and thus are difficult (not impossible though!) to match between separate datasets for comparative purposes.
      Classified symbology is better for ordinal data and for when you need comparability between multiple datasets. Basically any use where you want to control the exact class definition, representation, and labeling.

    2. Comparability within your dataset or between multiple datasets or map frames

      Divergent color schemes with matching breaks on either side of the threshold value allow us to make comparisons within a data set - see the Elevation Change example map above.

      When making direct comparisons of classes across multiple datasets or map frames, you should use the same color scheme and same class breaks for all frames. To do this, you may need to extend the min and/or max values of your classes to accomodate all values across all of your dataset. For example, if one frame goes from -10 meters to 400 meters and the other frame goes from -25 m to 300 meters - your color classes/ramp for both datasets should be set to cover all values -25 to 400 m for both frames.

      Note that these approaches will likely de-emphasize the spatial variability within each individual dataset in order to facilitate comparison between datasets. This is a tradeoff.

    3. How should I distribute class breaks? {#how-should-i-distribute-class-breaks?}

      “Breaks” refer to the cutoff values between discrete classes. As mentioned above, there are two general approaches:

      Approach A: Highlight variability within a single dataset

      We often start with this approach as it makes our individual datasets look better. Class or color breaks should be closer together (include a smaller range of values) where you have the highest density of data and farther apart where there are fewer data points. This allows you to use all of the colors in your color scheme more efficiently, especially when your data has a highly skewed distribution (which a lot of environmental data does).

      Several of the Classify Methods in ArcPro follow this approach. Natural Breaks, Quantile, Geometric Interval, and Standard Deviation are all driven by the distribution of data values in a given dataset and therefore useful to highlight variability within a given dataset.

      Approach B: Set manual classes or equal interval classes to allow for better comparability between classes or between multiple datasets

      We turn to this approach mainly when we need to compare datasets between maps or where fitting the color scheme to the distribution (Approach A) does not make sense.

      Examples where this approach may be justified:

  • Your data may be given to you already classified into uneven classes.
  • You may only be interested in specific, predefined ranges like “middle income” or “below poverty level.”
  • Your data may have a natural range (eg. probability from 0 to 1 or range from 0% to 100 %) and it would make more sense to use equal interval breaks within that potential range. In this case, you may opt to separate your data into 10 equal classes from 0-10, 10-20, etc.
  • If you are using a divergent color scheme – it often makes sense to mirror the breaks on either side of the threshold value so that classes on either side are directly comparable. For example, if you have a map showing areas of increasing elevation, no change, and decreasing elevation – it makes sense that areas with 0.5 to 1 m of increase can be compared to areas with 0.5 to 1 m decrease.

    Several of the Classify Methods in ArcPro are designed for this approach: Equal Interval, Defined Interval, Manual Interval. As noted above this will likely reduce the representation of spatial variability within each individual dataset, but will allow for comparability between multiple datasets.

    1. How to use Stretch statistics to compare rasters

      Adjusting the color stretch statistics for your continuous color ramp allows you to balance the “variability within” vs. “comparability between” tradeoff discussed above. For this approach, you will need to specify the same set of color stretch statistics (min, max, mean, standard deviation) and same color scheme for each raster. The stats used can be pulled from only one raster or could be from a combination of rasters. This approach is not often used and needs to be done with intention and caution.

      To do this in ArcPro: You need to specify the Min, Max, Mean, and Standard Deviation for your color ramp stretch: Symbology > Stretch type. At the bottom use the “Statistics” panel, choose Statistics > Custom. Here you can input your own stats from another raster to compare or use your own stats.
      For Percent Clip you only need to specify the Min and Max. For Standard Deviation you need to input all four statistics.

    2. How to manually adjust color schemes in ArcPro

      You might need to do this to alter a divergent color ramp to show a key break in your dataset when that break is not in the middle of the distribution. This should also be done with intention and caution.

      You can manually adjust the color scheme breaks by:

  • Dragging the color stops in your color ramp Symbology > Color scheme (down arrow) > “Format color scheme…”

    You can drag these color stops to adjust where the white threshold color falls on your data (don’t change the order of the stops though because that will mess up the color progression, just shift each of them over in turn).

  • Also note that you can also change the color stop position by specifying the location (measured by percent) along the color ramp.

    Click the gray box to reverse the color ramp (i.e. switch purple and brown ends)

MODELS GUIDANCE

Below is a good example of a student effectively grouping together and labeling different portions of a model before also ensuring that the entire set of 3 grouped pieces is also labeled (Constraints Model). Moving forward, we’ll be looking for something equally organized and descriptive. Remember, models are a way to document your approach; descriptive titles to the overall model, to the grouped portions of the model, and even as textboxes for individual tools within these groups can be an invaluable way to communicate to your audience how you approached a geospatial task. Ultimately, this type of organization of your work is for the benefit of our reader/audience. As you go through this process, also remember that you can use the “Auto Layout” tool in order to make your work more organized.

If you don’t know how to group pieces of your model, follow the steps below:

Step 1: click, hold down, and drag your cursor to select the group of inputs/tools/outputs that you’d like to select. Once you have your selection, release your cursor.

Step 2: right-click over the area you’ve just selected and navigate to the option, “Group.” Once you group your selection, it should appear like this second image. From there, you can double-click on the text at the top of the group box and rename your group.