Skip to content

Maps and scenes use a collection of layers to display geographic data from a variety of sources and formats. These can include several basemap layers and data layers from online or local sources.

Each layer in a map references geographic data, either from an online service or from a local dataset. There are a variety of layers that can be added to a map, each designed to display a particular type of data. Some layers display images, such as satellite photos or aerial photography, others are composed of a collection of features to represent real-world entities using point, line, or polygon geometries. In addition to geometry, features have attributes that provide details about the entity it represents.

Basemap layers

A basemap is the foundational layer and data that provides the overall visual and geographic context for a map or scene. They enable your users to see where geographic features are located relative to other features and to visualize spatial relationships. A basemap typically includes features and labels for real-world topographic features such as land, water, roads, buildings, cities, places, and administrative boundaries, but may also include satellite and aerial image data. The content of a basemap is usually static and does not change frequently.

A basemap is composed of a collection of base layers and reference layers. Base layers are displayed at the bottom of a map or scene to display geographic context, and reference layers are displayed on top to provide labels and other reference data. Your operational data, or data layers, are displayed between the base layers and reference layers. You can create a basemap from your own data or choose from one of the many hosted basemap styles.

The basemap styles service provides a number of vector tile and image tile basemap layers that are categorized by the type of data they support and the type of cartographic design they represent. This is known as the basemap style. In ArcGIS, there are two main families of basemap styles based on data provider type: ArcGIS Basemap styles and Open Basemap styles. The list of available basemap styles is defined in an enumeration based on the data source and style name. For example, you can use a Navigation style to create an application that supports driving directions, or you can an Imagery style to create an application that displays a real-world view of the earth. You can also use Open Basemap styles to access vector basemaps, hosted by Esri, that use map data from the Overture Maps Foundation.

Add a vector tile basemap
Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
        ArcGISEnvironment.apiKey = ApiKey.create(YOUR_ACCESS_TOKEN)

        val arcGISMap = ArcGISMap(BasemapStyle.ArcGISNavigation)
        // val arcGISMap = ArcGISMap(BasemapStyle.ArcGISTopographic)
        //val arcGISMap = ArcGISMap(BasemapStyle.ArcGISLightGray)
        // val arcGISMap = ArcGISMap(BasemapStyle.OpenDarkGray)

        // Display the map by assigning it to the mutable map property used by the Composable MapView.
        map = arcGISMap
Add an image tile basemap
Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
       ArcGISEnvironment.apiKey = ApiKey.create(YOUR_ACCESS_TOKEN)

        val arcGISMap = ArcGISMap(BasemapStyle.ArcGISImageryStandard)
        // val arcGISMap = ArcGISMap(BasemapStyle.ArcGISHillshadeLight)
        // val arcGISMap = ArcGISMap(BasemapStyle.ArcGISHillshadeDark)

        // Display the map by assigning it to the mutable map property used by the Composable MapView.
        map = arcGISMap

Data layers

A data layer, also known as an operational layer, is a layer that can access geographic data from a data source. You use a data layer to display geographic data on top of a basemap layer in a map or scene. The data source for the layer can be a data service or a file such as a shapefile or GeoPackage.

A data layer provides access to geographic data that is displayed in a map or scene. Each layer references a file or service data source. The data source contains either as vector data (points, lines, polygons and attributes) or raster data (images). Different types of layers can access and display different types of data.

The data for a data layer is typically stored in ArcGIS as a data service. You can use feature services, map tile services, and vector tile services to host your data. Learn more in Data hosting.

A data layer can also be created from a dataset stored on the device. For example, data stored in a shapefile, mobile map package, or geodatabase. Learn more about using offline data in Offline maps, scenes, and data.

To add a data layer to a map or scene, you typically add imagery or tile layers first, and then polygons, lines, and points layers last. A map or scene controls the order of the layers, and the map or scene view combines the layers to create the final display.

Add data layers to a map
Use dark colors for code blocksCopy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
    ArcGISEnvironment.apiKey = ApiKey.create(YOUR_ACCESS_TOKEN)

    val arcGISMap = ArcGISMap(BasemapStyle.ArcGISTopographic)

    val trailheadsLayer = FeatureLayer.createWithFeatureTable(
        ServiceFeatureTable("https://services3.arcgis.com/GVgbJbqm8hXASVYi/arcgis/rest/services/Trailheads_Styled/FeatureServer/0"))

    val trailsLayer = FeatureLayer.createWithFeatureTable(
        ServiceFeatureTable("https://services3.arcgis.com/GVgbJbqm8hXASVYi/arcgis/rest/services/Trails_Styled/FeatureServer/0"))

    val openSpacesLayer = FeatureLayer.createWithFeatureTable(
        ServiceFeatureTable("https://services3.arcgis.com/GVgbJbqm8hXASVYi/arcgis/rest/services/Parks_and_Open_Space_Styled/FeatureServer/0"))

    arcGISMap.operationalLayers.addAll(listOf(openSpacesLayer, trailsLayer, trailheadsLayer))

    // Display the map by assigning it to the mutable map property used by the Composable MapView.
    map = arcGISMap

Use API key access tokens

Tutorials

Samples

Add feature layers

Add scene layer from service

Manage operational layers

Add dictionary renderer to feature layer

Add web tiled layer

Services

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.