@saschabrunnerch/arcgis-maps-sdk-js-ai-context 0.0.2 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +163 -203
- package/bin/cli.js +157 -173
- package/contexts/4.34/{claude → skills}/arcgis-3d-advanced/SKILL.md +586 -586
- package/contexts/4.34/{claude → skills}/arcgis-advanced-layers/SKILL.md +431 -431
- package/contexts/4.34/{claude → skills}/arcgis-analysis-services/SKILL.md +607 -607
- package/contexts/4.34/{claude → skills}/arcgis-authentication/SKILL.md +301 -301
- package/contexts/4.34/{claude → skills}/arcgis-cim-symbols/SKILL.md +486 -486
- package/contexts/4.34/{claude → skills}/arcgis-coordinates-projection/SKILL.md +406 -406
- package/contexts/4.34/{claude → skills}/arcgis-core-maps/SKILL.md +739 -739
- package/contexts/4.34/{claude → skills}/arcgis-core-utilities/SKILL.md +732 -732
- package/contexts/4.34/{claude → skills}/arcgis-custom-rendering/SKILL.md +445 -445
- package/contexts/4.34/{claude → skills}/arcgis-editing-advanced/SKILL.md +702 -702
- package/contexts/4.34/{claude → skills}/arcgis-feature-effects/SKILL.md +393 -393
- package/contexts/4.34/{claude → skills}/arcgis-geometry-operations/SKILL.md +489 -489
- package/contexts/4.34/{claude → skills}/arcgis-imagery/SKILL.md +307 -307
- package/contexts/4.34/{claude → skills}/arcgis-interaction/SKILL.md +572 -572
- package/contexts/4.34/{claude → skills}/arcgis-knowledge-graphs/SKILL.md +582 -582
- package/contexts/4.34/{claude → skills}/arcgis-layers/SKILL.md +601 -601
- package/contexts/4.34/{claude → skills}/arcgis-map-tools/SKILL.md +668 -668
- package/contexts/4.34/{claude → skills}/arcgis-media-layers/SKILL.md +290 -290
- package/contexts/4.34/{claude → skills}/arcgis-portal-content/SKILL.md +679 -679
- package/contexts/4.34/{claude → skills}/arcgis-scene-effects/SKILL.md +512 -512
- package/contexts/4.34/{claude → skills}/arcgis-smart-mapping/SKILL.md +686 -686
- package/contexts/4.34/{claude → skills}/arcgis-starter-app-extended/SKILL.md +649 -649
- package/contexts/4.34/{claude → skills}/arcgis-tables-forms/SKILL.md +877 -877
- package/contexts/4.34/{claude → skills}/arcgis-time-animation/SKILL.md +722 -722
- package/contexts/4.34/{claude → skills}/arcgis-utility-networks/SKILL.md +301 -301
- package/contexts/4.34/{claude → skills}/arcgis-visualization/SKILL.md +580 -580
- package/contexts/4.34/{claude → skills}/arcgis-widgets-ui/SKILL.md +574 -574
- package/lib/installer.js +19 -104
- package/package.json +45 -45
- package/contexts/4.34/copilot/arcgis-3d.instructions.md +0 -267
- package/contexts/4.34/copilot/arcgis-analysis.instructions.md +0 -294
- package/contexts/4.34/copilot/arcgis-arcade.instructions.md +0 -234
- package/contexts/4.34/copilot/arcgis-authentication.instructions.md +0 -187
- package/contexts/4.34/copilot/arcgis-cim-symbols.instructions.md +0 -177
- package/contexts/4.34/copilot/arcgis-core-maps.instructions.md +0 -246
- package/contexts/4.34/copilot/arcgis-core-utilities.instructions.md +0 -247
- package/contexts/4.34/copilot/arcgis-editing.instructions.md +0 -262
- package/contexts/4.34/copilot/arcgis-geometry.instructions.md +0 -225
- package/contexts/4.34/copilot/arcgis-layers.instructions.md +0 -278
- package/contexts/4.34/copilot/arcgis-popup-templates.instructions.md +0 -266
- package/contexts/4.34/copilot/arcgis-portal-advanced.instructions.md +0 -275
- package/contexts/4.34/copilot/arcgis-smart-mapping.instructions.md +0 -184
- package/contexts/4.34/copilot/arcgis-starter-app-extended.instructions.md +0 -643
- package/contexts/4.34/copilot/arcgis-starter-app.instructions.md +0 -268
- package/contexts/4.34/copilot/arcgis-time-animation.instructions.md +0 -112
- package/contexts/4.34/copilot/arcgis-visualization.instructions.md +0 -321
- package/contexts/4.34/copilot/arcgis-widgets-ui.instructions.md +0 -277
- /package/contexts/4.34/{claude → skills}/arcgis-arcade/SKILL.md +0 -0
- /package/contexts/4.34/{claude → skills}/arcgis-popup-templates/SKILL.md +0 -0
- /package/contexts/4.34/{claude → skills}/arcgis-starter-app/SKILL.md +0 -0
|
@@ -1,275 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
applyTo: "**/*.{js,ts,jsx,tsx,html}"
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# ArcGIS Maps SDK - Portal, Imagery & Advanced Features
|
|
6
|
-
|
|
7
|
-
## Portal Operations
|
|
8
|
-
|
|
9
|
-
### Load Portal
|
|
10
|
-
```javascript
|
|
11
|
-
import Portal from "@arcgis/core/portal/Portal.js";
|
|
12
|
-
|
|
13
|
-
const portal = new Portal({ authMode: "immediate" });
|
|
14
|
-
await portal.load();
|
|
15
|
-
|
|
16
|
-
console.log("User:", portal.user.username);
|
|
17
|
-
console.log("Org:", portal.name);
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
### Query Portal Items
|
|
21
|
-
```javascript
|
|
22
|
-
import PortalQueryParams from "@arcgis/core/portal/PortalQueryParams.js";
|
|
23
|
-
|
|
24
|
-
const queryParams = new PortalQueryParams({
|
|
25
|
-
query: `owner:${portal.user.username} type:"Web Map"`,
|
|
26
|
-
sortField: "modified",
|
|
27
|
-
sortOrder: "desc",
|
|
28
|
-
num: 20
|
|
29
|
-
});
|
|
30
|
-
|
|
31
|
-
const result = await portal.queryItems(queryParams);
|
|
32
|
-
result.results.forEach(item => console.log(item.title, item.id));
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
### Create/Save WebMap
|
|
36
|
-
```javascript
|
|
37
|
-
import WebMap from "@arcgis/core/WebMap.js";
|
|
38
|
-
|
|
39
|
-
const webmap = new WebMap({ basemap: "topo-vector" });
|
|
40
|
-
webmap.add(layer);
|
|
41
|
-
|
|
42
|
-
await webmap.save({
|
|
43
|
-
title: "My WebMap",
|
|
44
|
-
description: "Description",
|
|
45
|
-
tags: ["tag1", "tag2"]
|
|
46
|
-
});
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
### PortalItem Operations
|
|
50
|
-
```javascript
|
|
51
|
-
import PortalItem from "@arcgis/core/portal/PortalItem.js";
|
|
52
|
-
|
|
53
|
-
const item = new PortalItem({ id: "ITEM_ID" });
|
|
54
|
-
await item.load();
|
|
55
|
-
|
|
56
|
-
console.log(item.title, item.type, item.owner);
|
|
57
|
-
|
|
58
|
-
// Update item
|
|
59
|
-
item.title = "New Title";
|
|
60
|
-
await item.update();
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
## Imagery Layers
|
|
64
|
-
|
|
65
|
-
### ImageryLayer
|
|
66
|
-
```javascript
|
|
67
|
-
import ImageryLayer from "@arcgis/core/layers/ImageryLayer.js";
|
|
68
|
-
|
|
69
|
-
const imageryLayer = new ImageryLayer({
|
|
70
|
-
url: "https://services.arcgis.com/.../ImageServer",
|
|
71
|
-
format: "jpgpng",
|
|
72
|
-
renderingRule: {
|
|
73
|
-
functionName: "NDVI" // or "Hillshade", "Stretch", etc.
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
### ImageryTileLayer
|
|
79
|
-
```javascript
|
|
80
|
-
import ImageryTileLayer from "@arcgis/core/layers/ImageryTileLayer.js";
|
|
81
|
-
|
|
82
|
-
const tileLayer = new ImageryTileLayer({
|
|
83
|
-
url: "https://services.arcgis.com/.../ImageServer"
|
|
84
|
-
});
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
### Multidimensional Imagery
|
|
88
|
-
```javascript
|
|
89
|
-
const imageryLayer = new ImageryLayer({
|
|
90
|
-
url: "...",
|
|
91
|
-
multidimensionalDefinition: [{
|
|
92
|
-
variableName: "temperature",
|
|
93
|
-
dimensionName: "StdTime",
|
|
94
|
-
values: [1609459200000]
|
|
95
|
-
}]
|
|
96
|
-
});
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
### Raster Functions
|
|
100
|
-
```javascript
|
|
101
|
-
imageryLayer.renderingRule = {
|
|
102
|
-
functionName: "Stretch",
|
|
103
|
-
functionArguments: {
|
|
104
|
-
StretchType: 5, // Standard deviation
|
|
105
|
-
NumberOfStandardDeviations: 2
|
|
106
|
-
}
|
|
107
|
-
};
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
## Media Layers
|
|
111
|
-
|
|
112
|
-
### MediaLayer
|
|
113
|
-
```javascript
|
|
114
|
-
import MediaLayer from "@arcgis/core/layers/MediaLayer.js";
|
|
115
|
-
import ImageElement from "@arcgis/core/layers/support/ImageElement.js";
|
|
116
|
-
|
|
117
|
-
const mediaLayer = new MediaLayer({
|
|
118
|
-
source: [
|
|
119
|
-
new ImageElement({
|
|
120
|
-
image: "https://example.com/image.png",
|
|
121
|
-
georeference: {
|
|
122
|
-
type: "corners",
|
|
123
|
-
topLeft: { x: -118.5, y: 34.5 },
|
|
124
|
-
topRight: { x: -117.5, y: 34.5 },
|
|
125
|
-
bottomRight: { x: -117.5, y: 33.5 },
|
|
126
|
-
bottomLeft: { x: -118.5, y: 33.5 }
|
|
127
|
-
}
|
|
128
|
-
})
|
|
129
|
-
]
|
|
130
|
-
});
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
### VideoElement
|
|
134
|
-
```javascript
|
|
135
|
-
import VideoElement from "@arcgis/core/layers/support/VideoElement.js";
|
|
136
|
-
|
|
137
|
-
const videoElement = new VideoElement({
|
|
138
|
-
video: videoUrl,
|
|
139
|
-
georeference: { /* extent */ }
|
|
140
|
-
});
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
## Advanced Layer Types
|
|
144
|
-
|
|
145
|
-
### SubtypeGroupLayer
|
|
146
|
-
```javascript
|
|
147
|
-
import SubtypeGroupLayer from "@arcgis/core/layers/SubtypeGroupLayer.js";
|
|
148
|
-
|
|
149
|
-
const subtypeLayer = new SubtypeGroupLayer({
|
|
150
|
-
url: "https://services.arcgis.com/.../FeatureServer/0"
|
|
151
|
-
});
|
|
152
|
-
|
|
153
|
-
await subtypeLayer.load();
|
|
154
|
-
subtypeLayer.sublayers.forEach(sublayer => {
|
|
155
|
-
console.log("Subtype:", sublayer.subtypeCode, sublayer.title);
|
|
156
|
-
});
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
### GroupLayer
|
|
160
|
-
```javascript
|
|
161
|
-
import GroupLayer from "@arcgis/core/layers/GroupLayer.js";
|
|
162
|
-
|
|
163
|
-
const groupLayer = new GroupLayer({
|
|
164
|
-
title: "My Group",
|
|
165
|
-
layers: [layer1, layer2, layer3],
|
|
166
|
-
visibilityMode: "independent" // independent, inherited, exclusive
|
|
167
|
-
});
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
### WMSLayer
|
|
171
|
-
```javascript
|
|
172
|
-
import WMSLayer from "@arcgis/core/layers/WMSLayer.js";
|
|
173
|
-
|
|
174
|
-
const wmsLayer = new WMSLayer({
|
|
175
|
-
url: "https://services.example.com/wms",
|
|
176
|
-
sublayers: [{ name: "layer_name" }]
|
|
177
|
-
});
|
|
178
|
-
```
|
|
179
|
-
|
|
180
|
-
### WFSLayer
|
|
181
|
-
```javascript
|
|
182
|
-
import WFSLayer from "@arcgis/core/layers/WFSLayer.js";
|
|
183
|
-
|
|
184
|
-
const wfsLayer = new WFSLayer({
|
|
185
|
-
url: "https://services.example.com/wfs",
|
|
186
|
-
name: "feature_type_name"
|
|
187
|
-
});
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
### OGCFeatureLayer
|
|
191
|
-
```javascript
|
|
192
|
-
import OGCFeatureLayer from "@arcgis/core/layers/OGCFeatureLayer.js";
|
|
193
|
-
|
|
194
|
-
const ogcLayer = new OGCFeatureLayer({
|
|
195
|
-
url: "https://services.example.com/ogcapi/collections/features"
|
|
196
|
-
});
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
## Knowledge Graphs
|
|
200
|
-
|
|
201
|
-
```javascript
|
|
202
|
-
import KnowledgeGraphLayer from "@arcgis/core/layers/KnowledgeGraphLayer.js";
|
|
203
|
-
|
|
204
|
-
const kgLayer = new KnowledgeGraphLayer({
|
|
205
|
-
url: "https://services.arcgis.com/.../knowledgeGraphServer"
|
|
206
|
-
});
|
|
207
|
-
|
|
208
|
-
// Query knowledge graph
|
|
209
|
-
const query = {
|
|
210
|
-
openCypherQuery: "MATCH (n:Person) RETURN n LIMIT 10"
|
|
211
|
-
};
|
|
212
|
-
const results = await kgLayer.queryKnowledge(query);
|
|
213
|
-
```
|
|
214
|
-
|
|
215
|
-
## Utility Networks
|
|
216
|
-
|
|
217
|
-
```javascript
|
|
218
|
-
import UtilityNetwork from "@arcgis/core/networks/UtilityNetwork.js";
|
|
219
|
-
|
|
220
|
-
const utilityNetwork = new UtilityNetwork({
|
|
221
|
-
url: "https://services.arcgis.com/.../FeatureServer"
|
|
222
|
-
});
|
|
223
|
-
|
|
224
|
-
await utilityNetwork.load();
|
|
225
|
-
|
|
226
|
-
// Trace
|
|
227
|
-
const traceResult = await utilityNetwork.trace({
|
|
228
|
-
traceType: "upstream",
|
|
229
|
-
traceLocations: [{ /* start point */ }]
|
|
230
|
-
});
|
|
231
|
-
```
|
|
232
|
-
|
|
233
|
-
## Feature Effects
|
|
234
|
-
|
|
235
|
-
```javascript
|
|
236
|
-
import FeatureEffect from "@arcgis/core/layers/support/FeatureEffect.js";
|
|
237
|
-
|
|
238
|
-
layerView.featureEffect = new FeatureEffect({
|
|
239
|
-
filter: { where: "population > 100000" },
|
|
240
|
-
includedEffect: "bloom(1, 0.5px, 0.2)",
|
|
241
|
-
excludedEffect: "grayscale(100%) opacity(30%)"
|
|
242
|
-
});
|
|
243
|
-
```
|
|
244
|
-
|
|
245
|
-
## Custom WebGL Rendering
|
|
246
|
-
|
|
247
|
-
```javascript
|
|
248
|
-
import CustomRenderer from "@arcgis/core/renderers/experimental/CustomRenderer.js";
|
|
249
|
-
|
|
250
|
-
const customRenderer = {
|
|
251
|
-
type: "custom",
|
|
252
|
-
setup: (context) => { /* WebGL setup */ },
|
|
253
|
-
draw: (context) => { /* WebGL draw calls */ }
|
|
254
|
-
};
|
|
255
|
-
```
|
|
256
|
-
|
|
257
|
-
## Layer Effects
|
|
258
|
-
|
|
259
|
-
```javascript
|
|
260
|
-
// CSS-like effects
|
|
261
|
-
layer.effect = "drop-shadow(2px 2px 3px gray)";
|
|
262
|
-
layer.effect = "blur(2px)";
|
|
263
|
-
layer.effect = "grayscale(100%)";
|
|
264
|
-
layer.effect = "brightness(150%) contrast(120%)";
|
|
265
|
-
|
|
266
|
-
// Blend modes
|
|
267
|
-
layer.blendMode = "multiply"; // normal, multiply, screen, overlay, darken, lighten
|
|
268
|
-
```
|
|
269
|
-
|
|
270
|
-
## Common Pitfalls
|
|
271
|
-
|
|
272
|
-
1. **Portal auth** - Set `authMode: "immediate"` for user content
|
|
273
|
-
2. **Imagery rendering rules** - Check available functions
|
|
274
|
-
3. **Knowledge graphs** - Requires ArcGIS Enterprise
|
|
275
|
-
4. **Utility networks** - Requires proper network configuration
|
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
applyTo: "**/*.{js,ts,jsx,tsx,html}"
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
# ArcGIS Maps SDK - Smart Mapping
|
|
6
|
-
|
|
7
|
-
Auto-generate renderers based on data, calculate statistics, and create data-driven visualizations.
|
|
8
|
-
|
|
9
|
-
## Renderer Creators
|
|
10
|
-
|
|
11
|
-
### Color Renderer (Continuous)
|
|
12
|
-
```javascript
|
|
13
|
-
import colorRendererCreator from "@arcgis/core/smartMapping/renderers/color.js";
|
|
14
|
-
|
|
15
|
-
const { renderer } = await colorRendererCreator.createContinuousRenderer({
|
|
16
|
-
layer: featureLayer,
|
|
17
|
-
view: view,
|
|
18
|
-
field: "population",
|
|
19
|
-
theme: "high-to-low" // high-to-low, above, below, centered-on, extremes
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
featureLayer.renderer = renderer;
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
### Color Renderer (Class Breaks)
|
|
26
|
-
```javascript
|
|
27
|
-
const { renderer } = await colorRendererCreator.createClassBreaksRenderer({
|
|
28
|
-
layer: featureLayer,
|
|
29
|
-
view: view,
|
|
30
|
-
field: "income",
|
|
31
|
-
classificationMethod: "natural-breaks", // equal-interval, quantile, standard-deviation
|
|
32
|
-
numClasses: 5
|
|
33
|
-
});
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
### Size Renderer
|
|
37
|
-
```javascript
|
|
38
|
-
import sizeRendererCreator from "@arcgis/core/smartMapping/renderers/size.js";
|
|
39
|
-
|
|
40
|
-
const { renderer } = await sizeRendererCreator.createContinuousRenderer({
|
|
41
|
-
layer: featureLayer,
|
|
42
|
-
view: view,
|
|
43
|
-
field: "magnitude"
|
|
44
|
-
});
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
### Type (Unique Values) Renderer
|
|
48
|
-
```javascript
|
|
49
|
-
import typeRendererCreator from "@arcgis/core/smartMapping/renderers/type.js";
|
|
50
|
-
|
|
51
|
-
const { renderer } = await typeRendererCreator.createRenderer({
|
|
52
|
-
layer: featureLayer,
|
|
53
|
-
view: view,
|
|
54
|
-
field: "landuse",
|
|
55
|
-
numTypes: 10
|
|
56
|
-
});
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
### Heatmap Renderer
|
|
60
|
-
```javascript
|
|
61
|
-
import heatmapRendererCreator from "@arcgis/core/smartMapping/renderers/heatmap.js";
|
|
62
|
-
|
|
63
|
-
const { renderer } = await heatmapRendererCreator.createRenderer({
|
|
64
|
-
layer: featureLayer,
|
|
65
|
-
view: view,
|
|
66
|
-
field: "magnitude"
|
|
67
|
-
});
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
### Dot Density Renderer
|
|
71
|
-
```javascript
|
|
72
|
-
import dotDensityRendererCreator from "@arcgis/core/smartMapping/renderers/dotDensity.js";
|
|
73
|
-
|
|
74
|
-
const { renderer } = await dotDensityRendererCreator.createRenderer({
|
|
75
|
-
layer: featureLayer,
|
|
76
|
-
view: view,
|
|
77
|
-
attributes: [
|
|
78
|
-
{ field: "dem_votes", color: "blue", label: "Democrat" },
|
|
79
|
-
{ field: "rep_votes", color: "red", label: "Republican" }
|
|
80
|
-
],
|
|
81
|
-
dotValue: 1000
|
|
82
|
-
});
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
### Relationship Renderer
|
|
86
|
-
```javascript
|
|
87
|
-
import relationshipRendererCreator from "@arcgis/core/smartMapping/renderers/relationship.js";
|
|
88
|
-
|
|
89
|
-
const { renderer } = await relationshipRendererCreator.createRenderer({
|
|
90
|
-
layer: featureLayer,
|
|
91
|
-
view: view,
|
|
92
|
-
field1: { field: "population" },
|
|
93
|
-
field2: { field: "income" },
|
|
94
|
-
numClasses: 3
|
|
95
|
-
});
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
### Pie Chart Renderer
|
|
99
|
-
```javascript
|
|
100
|
-
import pieChartRendererCreator from "@arcgis/core/smartMapping/renderers/pieChart.js";
|
|
101
|
-
|
|
102
|
-
const { renderer } = await pieChartRendererCreator.createRenderer({
|
|
103
|
-
layer: featureLayer,
|
|
104
|
-
view: view,
|
|
105
|
-
attributes: [
|
|
106
|
-
{ field: "asian", label: "Asian" },
|
|
107
|
-
{ field: "black", label: "Black" },
|
|
108
|
-
{ field: "white", label: "White" }
|
|
109
|
-
]
|
|
110
|
-
});
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
## Statistics Functions
|
|
114
|
-
|
|
115
|
-
### Class Breaks
|
|
116
|
-
```javascript
|
|
117
|
-
import classBreaksStats from "@arcgis/core/smartMapping/statistics/classBreaks.js";
|
|
118
|
-
|
|
119
|
-
const result = await classBreaksStats({
|
|
120
|
-
layer: featureLayer,
|
|
121
|
-
field: "population",
|
|
122
|
-
classificationMethod: "natural-breaks",
|
|
123
|
-
numClasses: 5
|
|
124
|
-
});
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
### Histogram
|
|
128
|
-
```javascript
|
|
129
|
-
import histogram from "@arcgis/core/smartMapping/statistics/histogram.js";
|
|
130
|
-
|
|
131
|
-
const result = await histogram({
|
|
132
|
-
layer: featureLayer,
|
|
133
|
-
field: "income",
|
|
134
|
-
numBins: 20
|
|
135
|
-
});
|
|
136
|
-
|
|
137
|
-
console.log(result.bins);
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
### Summary Statistics
|
|
141
|
-
```javascript
|
|
142
|
-
import summaryStatistics from "@arcgis/core/smartMapping/statistics/summaryStatistics.js";
|
|
143
|
-
|
|
144
|
-
const result = await summaryStatistics({
|
|
145
|
-
layer: featureLayer,
|
|
146
|
-
field: "temperature"
|
|
147
|
-
});
|
|
148
|
-
|
|
149
|
-
console.log(result.avg, result.min, result.max, result.stddev);
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
### Unique Values
|
|
153
|
-
```javascript
|
|
154
|
-
import uniqueValues from "@arcgis/core/smartMapping/statistics/uniqueValues.js";
|
|
155
|
-
|
|
156
|
-
const result = await uniqueValues({
|
|
157
|
-
layer: featureLayer,
|
|
158
|
-
field: "category"
|
|
159
|
-
});
|
|
160
|
-
```
|
|
161
|
-
|
|
162
|
-
## Color Schemes
|
|
163
|
-
|
|
164
|
-
```javascript
|
|
165
|
-
import symbologyColor from "@arcgis/core/smartMapping/symbology/color.js";
|
|
166
|
-
|
|
167
|
-
const schemes = symbologyColor.getSchemes({
|
|
168
|
-
geometryType: "polygon",
|
|
169
|
-
theme: "high-to-low"
|
|
170
|
-
});
|
|
171
|
-
|
|
172
|
-
const scheme = symbologyColor.getSchemeByName({
|
|
173
|
-
geometryType: "polygon",
|
|
174
|
-
name: "Blue 5",
|
|
175
|
-
theme: "high-to-low"
|
|
176
|
-
});
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
## Common Pitfalls
|
|
180
|
-
|
|
181
|
-
1. **View required** - Most functions need view for scale calculations
|
|
182
|
-
2. **Async operations** - Always await results
|
|
183
|
-
3. **Layer must be loaded** - Load layer before using smart mapping
|
|
184
|
-
4. **Field type match** - Numeric fields for continuous, string for unique values
|