Problem: Symbolizing in ArcMap using transparency by field producing inaccurate results


Inaccurate results when using field-based transparency in ArcMap.

Example: Mapping US_States by POP90_SQMI and using field-based transparency. Illinois and Georgia are symbolized similarly even though the data values are significantly different. Illinois has a population density of 203 persons per square mile, which is interpreted as 3% transparent. Georgia has a population density of 110 persons per square mile, which is interpreted as 10% transparent. Both states appear to have similar population densities on a map produced with these results.


Transparency by field interprets data values as a percentage transparency. Consequently, it does not deal well with values greater than 100. For values greater than 100, it performs a modulus operation on the value.

Solution or Workaround

Avoid using transparency by field with data that ranges below 0 or above 100. If necessary, add a new field and calculate a re-scaled data range.

  1. Right-click on the layer in the ArcMap Table of Contents and select Open Attribute Table.
  2. Determine the minimum and maximum values in the field whose values need to be scaled to a range between 0 and 100 (OldField). Right-click on OldField and select Sort Ascending. Note the minimum, then scroll down to the bottom and note the maximum.
  3. Click Options and select Add Field. Add a new Short Integer field. Call this field NewField.
  4. Right-click on NewField and select Field Calculator.
  5. Enter the following expression, inserting the actual min and max for <OldField Maximum> and <OldField Minimum>:
    (100 * ([OldField] - <OldField Minimum>)) / (<OldField Maximum> - <OldField Minimum>)

    Be sure to include the negative sign for negative values.
  6. Click OK to calculate the values for NewField.