Symbolize features

Most of the maps you create as the GIS specialist for Cambridge, Minnesota, include a basemap. By designing a custom basemap, you’ll have more control over the appearance of your maps. In this lesson, you’ll add raw county data into a new basemap, change the coordinate system, and symbolize the features. When symbolizing, you’ll consider both the guidelines for visual variables and the visual hierarchy of important features.

Start a new basemap

First, you’ll create a new basemap in ArcGIS Pro.

  1. Download the Isanti_Data compressed folder.
  2. Locate the downloaded file on your computer.
    Note:

    Depending on your web browser, you may have been prompted to choose this file’s location before you began the download. Most browsers download to your computer’s Downloads folder by default.

  3. Right-click the file and extract it to a location you can easily find, such as your Documents folder.

    Next, you’ll start a new project in ArcGIS Pro.

  4. Start ArcGIS Pro and sign in to your ArcGIS organization account or into your ArcGIS Enterprise using a named user account.
    Note:

    If you don't have an organizational account, you can sign up for an ArcGIS free trial.

    When you open ArcGIS Pro, you're given the option to create a new project or open an existing one. If you've created a project before, you'll see a list of recent projects.

  5. Under New, choose Map.
    Note:

    The example images in these lessons use the ArcGIS Pro dark theme instead of the default light theme. To change the theme, click About ArcGIS Pro and click Options. On the General tab, change Theme to Dark.

    Open a new project

  6. In the Create a New Project window, name the map Isanti Basemap. Save it to your folder and click OK.

    A new project opens.

  7. On the ribbon, click the Insert tab. In the Project group, click the arrow on the New Map button and choose New Basemap.

    Add a new basemap

    A blank basemap pane is added to the project. It is named Basemap. You’ll rename it something meaningful.

  8. In the Contents pane, click Basemap once to select it and a second time to edit the name. Change the name to Isanti Basemap.

Change the coordinate system

Next, you’ll change the coordinate system to something more appropriate for Minnesota. The default coordinate system is WGS 1984 Web Mercator, which is widely used for data at small scales, such as the United States or the world. But the Web Mercator projection is most accurate along the equator and distorts data towards the poles. Since Minnesota is far north of the equator and your map is large scale, you’ll use a State Plane coordinate system instead.

There are 124 State Plane coordinate systems, each tailored to a specific area in the United States. These zones are popular with local governments because they are accurate at specific scales. You’ll choose a State Plane coordinate system designed for central Minnesota, where Cambridge is located.

  1. In the Contents pane, double-click Isanti Basemap.

    The Basemap Properties window opens.

  2. Click Coordinate Systems.

    Change coordinate systems

    A list of available coordinate systems and other coordinate systems options becomes available.

  3. In the search bar, type State Plane and press Enter. In the list of results, expand Projected coordinate system and State Plane.

    Search for State Plane coordinate system

  4. Expand NAD 1983 (Meters) and click NAD 1983 StatePlane Minnesota Central FIPS 2202 (Meters). Then, click OK.

    The map’s coordinate system is now set and the window closes. You’ll also change the projections of the data layers. If the basemap and the data have different coordinate systems, you may encounter visual errors or incorrect geometry. You’ll use a tool called Batch Project to change the coordinate system of all your data layers at once.

  5. On the ribbon, click the Analysis tab. In the Geoprocessing group, click Tools.

    Tools button

    The Geoprocessing pane opens.

  6. In the search bar, type Batch Project. In the list of results, click Batch Project (Data Management Tools).
  7. For Input Feature Class or Dataset, click the browse button and browse to the unzipped folder Isanti_Data folder.

    The folder contains a list of 11 layers.

  8. While pressing Shift, click the first layer in the list and the last layer to select all 11 layers. Click OK.
  9. For Output Workspace, click the browse button. In the Output Workspace window, under Project, click Databases and choose the Isanti Basemap geodatabase.

    When you run the tool, your output layers will be added to the project’s default geodatabase.

  10. For Output Coordinate System, choose Current Map.

    The coordinate system changes to match that of the map (NAD 1983 StatePlane Minnesota Central FIPS 2202).

    Batch project tool

  11. Click Run.

    The tool runs and the reprojected data layers are added to the project’s default geodatabase.

  12. Close the Geoprocessing pane. In the Catalog pane, expand the Databases folder and the Isanti Basemap geodatabase.

    Layers in geodatabase

    If no layers appear, right-click the geodatabase and choose Refresh.

  13. Add all 11 of the projected layers to the map.
    Tip:

    To quickly add all layers, select them all using Shift+Click. Then, right-click any selected layer and choose Add to Current Map.

    Isanti County default map

    Note:

    The default symbology for each layer is random and may differ from the example images.

  14. In the Contents pane, double-click any layer to open its Layer Properties window. On the Source tab, click Spatial Reference and confirm the coordinate system is the Central Minnesota State Plane coordinate system.

    Confirm spatial reference

  15. Close the Layer Properties window.

Group the data

Your map has a large number of data layers. To keep these layers organized, you’ll group them based on the kind of data they contain. Grouping layers will also make it easier to manage the order in which layers appear on the map.

  1. In the Contents pane, click the arrow next to each layer to hide the symbols.

    The layers now take up less space in the pane.

  2. Press the Ctrl key while clicking all the following layers:

    • Isanti_Airport_Points
    • Isanti_Roads
    • Isanti_Railroads
    • Isanti_Airport_Runways

    These layers involve transport, so it makes sense to group them.

  3. Right-click the selected layers and choose Group.

    Create Group layer

    The selected layers are added to a new group layer. Each layer is still functional on its own, but they can also be turned on and off as a group, along with other capabilities.

  4. Click New Group Layer and click it a second time to change its name. Rename the group layer Transport.
  5. Group the following layers:

    • Isanti_Flowlines
    • Isanti_Water_Bodies
    • Isanti_Major_Rivers

    These layers all involve hydrological features.

  6. Rename the group Hydro.

    All of the remaining four layers involve political boundaries, such as nature reserves or incorporated cities.

  7. Group the remaining layers and rename the group Boundaries.

    Group layers

    Your data is now grouped into three types of data. It’ll be easier to find specific layers as you proceed through the workflow.

Change the background

Now that all the data is on the map, you’ll start to symbolize it. First, you’ll change the background. Currently, the county boundary layer has a fill color that serves as the background, but only for the parts of the map inside Isanti County. You’ll change the county boundary’s symbol to an outline with no fill, and then change the basemap’s background to a light gray color that won’t stand out too much or obscure the other layers.

  1. In the Contents pane, right-click Isanti_County and choose Symbology.

    Open Symbology pane

    The Symbology pane opens and displays the layer’s symbol. Isanti County is displayed as a single symbol.

  2. Next to Symbol, click the symbol swatch.

    The Format Polygon Symbol window opens to the gallery. Esri provides a list of default symbols for both 2D and 3D maps. For this layer, you’ll use one of these symbols.

  3. In the gallery, scroll down and choose Black Outline (1 pt).

    Format polygon symbol

    The county layer redraws with the new outline and no fill color. Next, you’ll add a light gray background color to the entire basemap.

  4. In the Contents pane, double-click Isanti Basemap. In the Basemap Properties window, click the General tab.
  5. For Background color, click the color box and choose Color Properties.

    Change background color

    The Color Editor window opens. It contains advanced color options.

  6. In the HEX box, type FCFBFA. Change Transparency to 0 percent.

    Background color editor

  7. Click OK. In the Basemap Properties window, click OK.

    The new background color is added to the map.

  8. In the upper left corner of ArcGIS Pro, click the Save button.

Symbolize transportation layers

Next, you’ll symbolize your layers. You’ll start with the transportation layer group. Of the layers in this group, the roads layer has the most prominence—roads fan out all over the country, with dense clusters in cities. Most of the roads are minor streets, but some are major highways. You’ll symbolize the layer to emphasize more important streets and prevent the clustered side streets from becoming unclear.

  1. In the Contents pane, click Isanti_Roads.

    If the Symbology pane is active, the roads layer will be added to it. The layer is currently drawn with a single symbol, but you want to use different symbols for different types of roads.

    Note:

    If the Symbology pane is not active, right-click the layer and choose Symbology.

    The layer currently is drawn with a single symbol, but there are different classes of roads that you must show.

  2. Under Symbology for Primary Symbology, choose Unique Values.

    Unique Values option

    The pane changes with options to choose the value field you want to symbolize. All of your layers have several value fields that contain more information about the features displayed on the map. Often, these fields only contain the name of the feature, but the roads layer contains a field called MTFCC_CODE. MTFCC_CODE stands for MAF/TIGER Feature Class Code, which the United States Census Bureau uses to classify road types.

  3. Under Unique Values, for Field 1, choose MTFCC_CODE.

    Change value field

    The layer has four MTFCC Code classes. Each code is a series of letters and numbers without much meaning. You’ll change the label of each code with a more meaningful description of the type of road. (The definitions for each code can be found in the link provided in step 2.)

  4. Under Label, double-click each value and change it to the following text:

    • S1200: Secondary Road
    • S1400: Local Neighborhood Road
    • S1500: Vehicular Trail (4WD)
    • S1630: Ramp

    Edit MTFCC code list

    Secondary roads are the most important roads in Isanti County. You’ll give this road type a symbol to indicate its importance.

  5. Next to Secondary Road, click Format Symbol (the default line symbol for the road type).

    The Format Line Symbol pane opens to the gallery. It is similar to the polygon symbol gallery, but has specific options for line symbols.

  6. Click the second line symbol, Major Road.

    Major road symbol

    Three major roads travel through Isanti County. Two are aligned vertically and one is aligned horizontally. The city of Cambridge is at the intersection of the horizontal highway and the right vertical highway.

  7. In the upper left corner of the pane, click the back arrow to return to the list of values. For the Local Neighborhood Road value, click Format Symbol.
  8. In the gallery, click Minor Road. Then, return to the list of values.
  9. Change Vehicular Trail (4WD) to the 0.5 Point symbol. Change Ramp to the first ramp symbol.
    Tip:

    If you have trouble finding a symbol in the gallery, you can search for its name in the search bar.

    Change road line symbols

    One of the benefits of using the default gallery symbols is that there is a clear visual hierarchy between different symbols. The symbol you chose for the secondary roads is brighter and slightly larger than the local roads symbol. This difference correctly indicates that the state routes are more important to the landscape.

    Symbolized roads layer

    The roads now have the correct symbology, but they are drawn as separate segments. Although it’s easier to save roads as segments, they should be drawn as continuous features. Doing so will also reduce the bunching up of symbols, which causes the local roads symbol to sometimes obscure the more important highways.

  10. At the top of the Symbology pane, click the Symbol Layer Drawingbutton.
    Symbol layer drawing button

    All the feature types in the Isanti_Roads layer are displayed by drawing order, which is the order in which the symbols appear on the map. You’ll enable symbol layer drawing for all of these layers.

    Symbol layer drawing overrides the default drawing method of displaying all features in a layer as individual symbols. Instead, it draws symbols based on whether Join or No Join is chosen in the drawing order list. For features where Join is chosen (such as your road layers), adjacent individual symbols are displayed as a single continuous symbol.

  11. At the top of the pane, click Enable symbol layer drawing.

    Enable symbol layer drawing

    The road symbols are displayed as continuous symbols rather than individual segments.

    Connect road casings

    The minor roads no longer overlap the major roads, and all roads are drawn as continuous symbols. At this zoom extent, the minor roads still cluster densely in cities. In a later lesson, you’ll change the symbols to draw differently at various scales in order to avoid this clustering, but for now you’ll change the symbols for the other transportation layers.

  12. In the Contents pane, click the Isanti_Railroads feature. In the Symbology pane, change its symbol to the gallery’s first Railroad symbol.

    Railroad symbol

  13. Change the Isanti_Airport_Runways symbol to the gallery’s first Airport Runway symbol.

    Airport Runway symbol

    The final transportation layer is Isanti_Airport_Points. This layer shows the location of airports as a point symbol, instead of the polygonal runways. You’ll use this layer when labeling features, so you won’t worry about it for now.

  14. Save the project.

Symbolize hydrography layers

Next, you’ll symbolize the hydrography layers. There is one river and several creeks flowing through Cambridge, and many lakes throughout the county. At this extent, most of the hydrography layers are difficult to see, so you’ll zoom in.

  1. Zoom to the city of Cambridge, located at the intersection of the horizontal highway and the rightmost vertical highway.

    Cambridge, Minnesota, overview

    When you zoom in, the roads become less densely clustered. It also becomes easier to see rivers and lakes in the area (in the example image, lakes have a default green symbology).

    Cambridge zoomed in

  2. Open the Symbology pane for Isanti_Water_Bodies.

    This layer only contains one type of feature, so you’ll give it a single symbol. The size and shape of the water bodies will be enough to indicate their importance in the region.

  3. In the Symbology pane, click the symbol swatch. In the gallery, choose the second Water (area) symbol.
    Tip:

    To make sure you’ve picked the second symbol, point to the symbol until hover text appears. The second water symbol has the text Category: Scheme 2.

    Change water style

  4. Open the Symbology pane for Isanti_Flowlines.

    The flowlines layer includes streams, canals, and ditches. Some of the flowlines represent major rivers and overlap with the Isanti_Major_Rivers layer. The major rivers layer provides the polygonal extent of streams, rivers, and other channels, while the flowlines layer only includes lines. The flowlines layer also contains attribute data such as flow direction and name, which will be important when labeling features. Like the water bodies, you’ll give the flowlines a single symbol.

  5. In the Symbology pane, click the symbol swatch.
  6. In the gallery, choose the second Water (line) symbol.

    Choose water line

    This symbol matches the water bodies layer. However, the line width is a little too small to see distinctly on the map.

  7. At the top of the pane, click Properties.

    Format Line Symbol properties

    With the properties you can customize individual elements of your symbology, such as color and size. This is where you can create custom symbology. The symbol you’ve set for the flowlines layer has a width of 1 pt.

  8. Change Line width to 1.5 pt and click Apply.

    The flowlines appear more clearly on the map.

  9. Change the Isanti_Major_Rivers layer to the same water polygon symbol as the Isanti_Water_Bodies layer.

    New hydro symbols

    All of the hydrology layers are symbolized.

  10. Save the project.

Symbolize boundary layers

Lastly, you’ll change the symbology for the boundary features. You’ve already symbolized the county boundary, but there are three more layers. The parks and nature reserves layers can use gallery symbols, but you’ll create a custom symbol for the incorporated place layer.

  1. Change the Cambridge_Parks layer to the gallery’s first Park symbol.
  2. Change the Isanti_Reserves layer to the gallery’s third Recreation symbol.

    Next, you’ll change the incorporated places layer. This layer represents cities in Isanti County. The gallery doesn’t have a specific symbol for cities, so you’ll create your own symbol.

  3. Open the Symbology pane for Isanti_Incorporated_Places.
  4. Click the symbol swatch to go to the gallery. At the top of the pane, click Properties.
  5. Under Appearance, change Color to Tecate Dust.

    Change color properties

    Tip:

    To see the name of any color in the list of colors, point to it until its hover text appears.

    You’ll also change the outline color. It’s a good idea to choose an outline that is similar to the fill color, but darker.

  6. Change Outline to Leather Brown (fourth column, bottom row). Change the Outline width to 2 pt and click Apply.

    The symbol coloring matches the background better, but it stands out too much. You’ll adjust the transparency to make the symbol subtler.

  7. On the ribbon, click the Appearance tab. In the Effects group, change layer transparency to 80 percent.

    Layer Transparency slider

    The incorporated place layer is still visible, but it blends into the background.

    Symbolized basemap draft

    This looks much more like a typical basemap now.

  8. Save the project.

In this lesson, you started a new basemap, added data to it, and symbolized most of the data while keeping cartographic principles in mind. In the next lesson, you’ll add labels to your features so that important places are named on the map.


Label features

In the previous lesson, you added and symbolized data to better show the transportation and hydrography features of Isanti County and Cambridge, Minnesota. In this lesson, you’ll add context to those features with labels. You want your labels to highlight key features without being overwhelming or cluttering the map. To accomplish this, you’ll use font families, sizing, and other effects that make labels more legible. Then, you’ll set visibility limits to determine what extents the labels are drawn at.

Label major roads

Some layers, like the roads layer, have multiple categories of features. Just as you symbolized these categories differently, you’ll also label them differently. To do so, you’ll create some simple Structured Query Language (SQL) queries to define label classes based on attribute fields in the roads layer. You’ll then give each label class its own set of rules for label display, starting with major roads.

  1. If necessary, open your Isanti Basemap project.
  2. In the Contents pane, click Isanti_Roads to select it.
  3. On the ribbon, click the Labeling tab. In the Layer group, click Label.

    Label button

    Labels are drawn for road features based on the first field in the layer’s attribute table, OBJECTID.

  4. In the Label Class group, change Field to FULL_STREE (short for full street name).
    Note:

    The Unique Value window may open, warning you that there are more than 100 unique street names. Click Yes to display the labels.

    Field changed to full street name

    By default, as many labels that fit in the map extent are drawn. Almost every feature has labels, which is overwhelming and difficult to read. You’ll create a SQL query to display labels only for major highways.

  5. In the Label Class group, click the SQL Query button.

    Add SQL clause

    The Label Class pane opens. This pane contains options to create label classes with queries that specify how each type of road is labeled. For example, you’ll give the state route attribute a different label class than the local roads. You can identify state roads because they have an MTFCC Code of S1200.

  6. If necessary, in the Label Class pane, click SQL query.

    SQL query option

  7. Near the bottom of the pane, click New Expression. Change the boxes to create the query MTFCC_CODE is Equal to S1200.

    Create SQL expression

  8. Click Apply.

    All labels except for state routes disappear. In this case, State Highway 95 has been given multiple labels with several local names.

    Local highway names

    To keep the name uniform throughout the map, you’ll use the state route designation as the field for the label class instead of the full street name. The state route designation is in a field called STATE_ROUT.

  9. On the ribbon, in the Label Class group, change Field to STATE_ROUT.

    The State Route field contains only route numbers. Although this makes your map less cluttered, the labels aren’t very descriptive. You’ll further customize your labels by writing an expression in Arcade that will combine the route number with descriptive text.

    Arcade is a scripting language created for customized visualizations and labeling expressions. It can be used across the ArcGIS platform.

  10. In the Label Class pane, click Label expression.

    Label expression button

    The default Arcade expression contains only the state route field.

  11. In the Expression box, click in front of the existing expression, $feature.STATE_ROUT. Type 'State Route ' + and add a space between your text and the existing expression.
    Note:

    This space between State Route and the end quotation is vital. Without it, your label will read State Route95.

    Arcade expression

  12. Click Apply.

    State route labels

    You’ll also change the label font to stand out more. Like symbology, labels have a gallery of suggested fonts.

  13. On the ribbon, in the Text Symbol group, click the down arrow next to the list of styles and choose Major Road.

    Change major road label font

    The labels on the map look better now, but changing the font to the default Major Road style changed the font size to something small and difficult to see.

  14. On the ribbon in the Text Symbol group, change the font size to 10 pt.

    The text changes size, but there are several duplicate labels for State Route 65. Some duplicate labels are fine, because the route stretches across the entire basemap. But some of the duplicate labels are close to one another, which is redundant. You’ll remove any duplicate labels that are within 4 inches of each other.

  15. In the Label Class pane, click Position and click Conflict Resolution.

    Conflict Resolution button

  16. Expand Remove duplicate labels. Change Do not remove to Remove within fixed distance, and set Search radius to 4.0 Inches.

    Remove duplicate labels within a fixed distance

    Duplicate labels that are too close to another label are removed from the map. Finally, you'll change the name of the label class. It was chosen by the software by default. It’s not a meaningful name, so you’ll rename it.

  17. In the Label Class pane, click Class. Then, in the upper right of the pane, click the button with three horizontal lines and choose Rename label class.

    Rename label class

  18. Rename the label class Major Roads and click OK.

Label local roads

When you added labels to all roads, the large number of labels cluttered the map. However, it’s still useful to label some local roads. To keep the labels from overwhelming the features, you’ll set additional parameters to limit how many labels appear.

  1. In the Label Class group, for Class, choose Create label class.

    Create label class

    With a new label class, you can set a completely new series of label parameters without changing the parameters you set for major roads.

  2. In the Create new label class window, type Local Roads and click OK.

    The new label class is added and the map is populated with all the default road labels.

  3. In the Label Class group, change Field to FULL_STREE. In the Text Symbol group, scroll down the gallery and choose Minor Road.

    Next, you’ll create an SQL query to only display local roads. The MTFCC Code for local roads is S1400.

  4. In the Label Class group, click the SQL Query button. Add the SQL clause MTFCC_CODE is Equal to S1400. Click Apply.

    Now that only local roads have labels, you’ll remove duplicate labels entirely, because local roads are much smaller than highways. You’ll also remove labels entirely for especially small features, which will help prevent clutter while ensuring that the most important roads remain labeled.

  5. In the Label Class pane, click Position. Set Remove duplicate labels to Remove all.
  6. Expand Minimum feature size. Set Minimum for labeling to 1.0 Inches.

    Set minimum size for labeling

  7. Zoom out until you see the entire county.

    The local road labels still appear at this extent, even though most of the local roads are barely distinguishable. To fix this, you'll set visibility ranges. There is no one rule for setting visibility ranges, but if labels aren't useful, they should be removed.

  8. On the ribbon, in the Visibility Range group, change Out Beyond to 1:24,000.

    Out Beyond visibility range

    The labels for local roads no longer appear at scales smaller than 1:24,000. State routes are still relevant at smaller scales, so you’ll set a larger extent for them.

  9. Change Class to Major Roads. Change Out Beyond to 1:100,000.

    Finished labels

  10. Save the project.

Add label effects

The gallery labels you added for streets are legible, appropriately sized, and distinguishable from the features they appear above. Sometimes, however, labels don’t appear so legibly and must be given label effects to appear distinctly on the map. In the next section, you’ll add labels to your other features and give them label effects so they stand out more.

  1. In the Contents pane, click the Isanti_Airport_Points layer to select it.
  2. On the ribbon, on the Labeling tab, click Label. If necessary, change the Field to Name.
  3. Zoom to the Cambridge Municipal Airport label.

    Label Cambridge Municipal Airport

    The default label position for point features is to the upper right of the point symbol. In this case, since the runway is on the map, the point feature is not needed. However, the point feature is used for labeling, so you’ll only make it invisible instead of removing it entirely.

  4. Click the Appearance tab. In the Effects group, change the transparency to 100 percent.

    The point no longer appears, but the label remains by the runway.

  5. On the Labeling tab, and change the font to Constantia.

    Font changed to Constantia

    Constantia is in the same font family as Corbel, the font you used for the road labels. When making maps, it’s important to use two or three fonts from a single family so your labels appear coordinated.

    Change label font

    Although the font looks more like the roads labels, it stands out too much.

  6. In the Label Class pane, click the Symbol tab and expand Appearance.
  7. Change Size to 9 pt and Color to Gray 70% (first column, third row from the bottom). Click Apply.

    Change font size

    The size is more appropriate for the feature, but the label blends in a little with the gray background, and will blend in even more at zoom extents where it overlaps with the runway. To make the text stand out, you’ll add a halo effect. A halo is a ring applied to the border of each individual letter to make it stand out from the background. Usually, the halo’s color should contrast with the text.

  8. Collapse Appearance and expand Halo. For Halo symbol, choose White fill.

    Add label halo

  9. Click Apply.

    Airport label with halo

    The halo looks good, but it can make the text more difficult to read when the letters are close together. You’ll adjust the spacing between each letter to make the text more legible.

  10. In the Label Class pane, click Formatting.

    Formatting group

  11. Expand Formatting. Change Letter spacing to 10 percent and click Apply.

    Change letter spacing

    The difference is subtle but noticeable. Like roads, you don’t need to show the label for airports at smaller scales, so you’ll set a visibility range.

  12. On the ribbon, in the Visibility Range group, change Out Beyond to 1:50,000.

    The water bodies, flowlines, parks, and incorporated places also need labels. The next few steps provide suggested label settings for each of the remaining layers, but feel free to experiment with label styles and effects on your own.

  13. For the Isanti_Water_Bodies layer, create a label with the following specifications:

    • Field: GNIS_Name
    • Text Symbol: Water (Small)
    • Text Symbol Font Style: Italic
    • Color: Gray 40%
    • Visibility Range: Out Beyond 1:50,000

  14. For the Isanti_Flowlines layer, create a label with the following specifications:

    • Field: GNIS_Name
    • Text Symbol: Water (Small)
    • Text Symbol Font Style: Italic
    • Color: Gray 50%
    • Visibility Range: Out Beyond 1:24,000

  15. For the Cambridge_Parks layer, create a label with the following specifications:

    • Field: Name
    • Text Symbol: Park
    • Visibility Range: Out Beyond 1:24,000

  16. For the Isanti_Incorporated_Places layer, create a label with the following specifications:

    • Field: Place_Name
    • Text Symbol: Populated Place
    • Remove duplicate labels: Remove all
    • Visibility Range: Out Beyond 1:500,000

    Incorporated places are important even at small scales, so it should have a much larger visibility range than the other layers.

    City of Cambridge with labeling

  17. Save the project.

Challenge

On most maps, highways are represented by both their full name and their number in a shield symbol. In this optional challenge, see if you can create new labels for the highways using the shield symbols available in the gallery.

Tip:

Create a new label class using the STATE_ROUT field. On the Labeling tab, experiment with the options in the Label Placement group to position the shield directly on the line, instead of above it. Remember to create a query so only state highways have shields, remove duplicate labels within a fixed distance, and set an appropriate visibility range.

Add highway shield

In this lesson, you added legible labels to many of the features on your map. At this stage in the mapmaking process, you could use this basemap for your city projects. But basemaps usually include more rules for scalable features than just visibility ranges for the labels. In the next lesson, you’ll edit the visibility rules to make your basemap useful at multiple scales. Then, you’ll publish your multiscale basemap to ArcGIS Online.


Publish a multiscale basemap

In the previous lesson, you added labels to your map. In this lesson, you’ll complete your map by making it multiscale. A multiscale map changes its symbology at different extents, maintaining a strong visual experience whether the user zooms in or out. Vector tiles are a type of layer that displays point, line, and polygon data at a range of scales, similar to other basemaps.

Change symbology for different scales

What looks good at one scale doesn’t necessarily look good at another. This is especially true of your local roads symbol. When zoomed in, the roads look fine, but when zoomed out, the bulky white symbol dominates the map. To fix this problem, you’ll create an alternate symbol and write a set of expressions that determine when each symbol is drawn.

  1. If necessary, open your Isanti Basemap project.
  2. Zoom out until you can see the entire county.

    Isanti County at small scale

    At this extent, the local roads overwhelm many other map features.

  3. Open the Symbology pane for the Isanti_Roads layer.
  4. In the Symbology pane, click the Scales tab.

    Scale range view

    The list of scale ranges for each road symbol opens. Each of the road layer features has a scale range slider.

  5. Click the local roads category (S1400) to select it.
  6. Click Add alternate symbol.

    Add alternate symbol

    A second local roads feature is added below the first. You’ll change the new symbol for local roads and specify the map extents at which you want each symbol to be visible.

  7. For the second local roads symbol, click Format symbols.

    The gallery opens.

  8. On the Properties tab, click Layers.

    The gallery symbol you previously used for local roads is a cased symbol, which means it has two distinct layers. One is a thin white line, and one is a thick tan line. When layered on top of one another, these symbols create the appearance of white roads with a tan border. Thin white lines are a common choice for road features at a small scale, but they wouldn’t show up well against the light background of your map. You’ll use a thinner version of the tan layer.

  9. Uncheck the box next to the white line.
  10. Click the tan line to select it. Change the width to 1 pt.

    Change line width

    You’ll also make the line transparent so areas with many roads bunched together won’t obscure other features as much.

  11. Click Color and choose Color Properties. Change the Transparency setting to 50 percent.
  12. Click OK. In the Symbology pane, click Apply.

    The map doesn’t change because you haven’t set a visibility scale for this symbol yet.

  13. Click the back arrow to return to the list of categories and symbols.
  14. In the local roads group, drag the slider for S1400 down to 1:24,000.

    Change alternate symbol visibility

    The feature’s two symbols change visibility accordingly. The thin tan line draws when zoomed out past 1:24,000, while the thick white line will draw when zoomed in. At the current map scale, the thin tan line draws.

    Alternate road symbol results

  15. Save the project.

Create a vector tile index

Your map is completed. Soon, you’ll publish it to your ArcGIS Online account as a vector tile layer. But first, you’ll index the map. A vector tile index is a layer that simplifies your data into squares that are sized based on the number of features in an area. An index is a way to check your work and make sure there aren’t a large number of features in a place where there shouldn’t be. If you ensure your data has no excess features, your map will publish and load more quickly.

  1. Open the Geoprocessing pane. (If the pane is not already open, click the Analysis tab and click Tools.)
  2. Search for and open Create Vector Tile Index.

    Create Vector Tile Index

    The tool parameters open.

  3. For Input Map, choose Isanti Basemap.
  4. For Output Tile Feature Class, click the browse button. Click Folders and choose Isanti_Basemap.gdb. For Name, type Isanti_Basemap_Tile and click Save.

    Browse to Isanti Basemap.gdb

    The index will publish to the geodatabase as a shapefile with a default name of Isanti_Basemap. You can also choose to package the index using the default tiling scheme for ArcGIS Online or other online services. However, to use this tiling scheme, your data must have the Web Mercator projection, which it doesn’t.

  5. Uncheck the box next to Package for ArcGIS Online | Bing Maps | Google Maps.

    When you uncheck the box, a default tiling scheme based on your map’s projection is chosen instead. The final parameter, Maximum Vertex Count, allows you to choose the number of vertices that become indexed into squares. The default value of 10,000 is fine.

    Package for ArcGIS Online

  6. Click Run.

    The index layer is added to the map.

    Vector tile index result

    The size of each square is based on the number of vertices present among all data layers in the square’s area. Each square contains about 10,000 vertices, so areas with more features (and more complex data) have smaller squares. Since Cambridge has a large number of features, it has many vertices and the smallest squares in the index. Toward the edges of the county, there are fewer features, so the squares are larger.

    The index seems correct based on your knowledge of your data. If there was a concentration of small squares in the northwest corner of the county, where there are very few features, it would indicate a problem with data duplication or complexity. Since this dataset appears to have no problems, you’ll publish it.

  7. In the Contents pane, uncheck the Isanti_Basemap_Tile layer to turn off the index.

    The last thing you need to do before you publish is specify a custom extent for your basemap. If you try to publish your basemap without a custom extent, the basemap will encompass the entire world, even though it has no data for anywhere other than Isanti County. You’ll give your basemap a custom extent that more closely follows the county boundaries.

  8. In the Contents pane, double-click Isanti Basemap to open the Basemap Properties.
  9. Click the Extent tab.
  10. Click Custom extent. For Calculate from, choose Isanti_County.

    Custom extent

  11. Click OK.

    Now the extent of your basemap matches the extent of the data. Lastly, you’ll dissolve your group layers. Although the group layers were useful when creating your map, sometimes they can affect publishing.

  12. Save your project.

Publish a vector tile

With everything completed, you’re ready to publish your basemap as a vector tile layer to ArcGIS Online.

  1. On the ribbon, click the Share tab. In the Share As group, click the Web Layer button.

    Share as web layer

    The Share As Web Layer pane opens.

  2. For Layer Type, ensure only Vector Tile is selected.
    Note:

    For Enterprise users: For Data, select Copy all data to enable the Vector Tile Layer Type.

  3. For Name, add your initials to the end of Isanti Basemap to make the layer name unique.

    Each layer in an organization must be unique, so adding your initials to the end of the layer name helps meet this condition.

  4. For Summary, type Basemap of Isanti County, Minnesota, for use in city projects.
  5. For Tags, type basemap, vector tile, and Cambridge. Press Enter after each tag.

    Share web layer tags

  6. For Sharing Options, check the box for your organization.
  7. At the top of the pane, click the Configuration tab.
    Note:

    For Enterprise users: In the Configuration tab, for Vector Tile, click Configure Web Layer Properties.

    This window contains options for caching the tile. To make the tile size smaller, you'll change the level of detail to only publish from a county level down. You’ll also ensure that the tile is locally cached in the project’s folder and that your index layer is used for tiling.

  8. Under Caching, for Levels of Detail, drag the Minimum slider to Level 9 (County).

    Level of detail choices

  9. For Temp local cache location, browse to the project’s Isanti Basemap folder.
  10. For Tiling Format, make sure Indexed is chosen. For Index Polygons, choose the Isanti_Basemap_Tile index layer.

    Share web layer configuration

  11. At the top of the pane, click the Content tab. Make sure all layers on your map (except the Isanti_Basemap_Tile index layer) are listed.

    If they don’t appear in the list, they won’t be packaged with the vector tile. Next, you’ll analyze the data in the package for validity. If the analyze tool finds anything that might cause the package tool to fail, it will list the potential error along with a brief description.

  12. At the bottom of the pane, click Analyze.

    No errors or warnings are found.

  13. Under Finish Sharing, click Publish.

    Depending on your connection and bandwidth, the basemap may take several minutes to publish.

  14. After the layer is published, click Manage the web layer.

    Manage the web layer

    The basemap’s item details page opens in your ArcGIS Online account (you may need to sign in first). You can add the basemap to a new map in ArcGIS Online and test it.

Challenge

Maps can look however you want. In this lesson, you created a basic basemap, using mostly the symbol gallery. If you want to further customize the map, you can change color values, transparency, fonts, and so on. A few examples are provided below; if you want to experiment more with cartography, use one of these or try making one of your own!

Bright basemap

One example is this brightly colored basemap. You may recognize some of the symbols from the gallery, but in general, all the colors have been made more vivid. Instead of a tan background for the city of Cambridge, the outline is done in a purple that ties together the blue of the lakes and orange roads. If you want to re-create this, you can use the HEX color values provided below. Remember that the transparency has been adjusted on some of the layers to help the colors blend better.

Background Secondary Road Local road 4WD Road RampHydroParksCityReserve

FBFCFB

Line: E69973

Casing: B35933

Line: FDFDFD

Casing: 994019

000000

Line: E69973

Casing: 994019

Fill: AAD3DF

Outline: 77C0CB

9ACD97

Fill: 4C0073

Outline: 4C0073

D8F0E7

Night basemap

This basemap, inspired by the Streets (Night) basemap in the Living Atlas, features very dark, desaturated colors. If you work with dark colors like this, make sure to change the color of your labels and text halos. Try this one using the HEX colors below:

Background Secondary Road Local road 4WD Road RampHydroParksCityReserve

292927

Line: 19527F

Casing: 19739A

Line: 404066

Casing: 19739A

FFFFFF

Line: 19739A

000E19

253722

31312F

4C7300

Old fashioned

Finally, in this antique-inspired map, both fonts and color are different. Like the last map, the colors in this one are very muted, with a lot more purples. If you want to experiment with cursive fonts like this, try the Lucida font family. The HEX values are given below.

Background Secondary Road Local road 4WD Road RampHydroParksCityReserve

F5F3F3

Line: B8AFB3

Casing: 949294

Line: FFFFFF

Casing: B9B7B9

828282

Line: D4CFD1

Casing: B8AFB3

ADCBCB

8EA48F

Fill: E3DDDD

Outline:A48F8E

DFF0DF

For more mapping inspiration, check out the basemaps in the Living Atlas, especially those under the Creative Maps category.

You now have a functional large-scale basemap to use in city projects. It has legible symbology and meaningful labels, and can be viewed at several extents. As you created it, you learned a few things about basic cartographic principles you can apply to other maps that you make.

You can find more lessons in the Learn ArcGIS Lesson Gallery.