Arcade – smart symbolisering og etiketter i ArcGIS Pro og ArcGIS Online
Arcade er et skriptspråk som kan brukes på tvers av ArcGIS Plattformen. Enten du ønsker å lage et enkelt skript som kontrollerer hvordan objekter symboliseres i kartet, eller bygge et utrykk som oppretter etiketter, er Arcade verktøyet du trenger. Skriptene du lager er portable, noe som betyr at utrykkene du har laget i ArcGIS Pro kan leses i webkart både i nettlesere og på mobile applikasjoner.
Med Arcade er du ikke lenger begrenset til å symbolisere lagene dine basert på et enkelt felt – nå kan du beregne avanserte uttrykk på direkten uten å redigere kildedataene dine.
Tidligere har vi vært avhengig av at kildedataene innehold akkurat de dataene vi trenger. Om dette ikke var tilfellet måtte vi legge til nye felter og beregne de ønskede verdiene der, men dette er ikke lenger nødvendig. Med Arcade kan du manipulere kartene dine ved hjelp av enkle uttrykk og funksjoner og danne helt nye representasjoner av dine data. Beregningene gjøres «on the fly», noe som betyr at symbolisering og etiketter oppfører seg dynamisk. Du trenger altså ikke å kjøre nye beregninger når dataene dine oppdateres!
Kom i gang med Arcade
Arcade kan brukes for både enkle og mer avanserte oppgaver innafor symbolisering og etiketter.
OBS! For å kunne benytte Arcade for et lag må det være en Feature Service.
Inne i ArcGIS Online finner du frem til Arcadeverkøtyet for symbolisering ved å åpne et kart, legge til laget/lagene du ønsker å bruke Arcade på. Følg deretter anvisningen på bildet – velg «Nytt uttrykk».
For å lage Arcade-uttrykk under etiketter gjør du følgende:
Eksempel på enkel oppretting av dynamiske etiketter med Arcade
Et lag med bygninger inneholder et felt med byggedato (feltet heter «forstedato»), men vi ønsker å lage etiketter basert på alder. Ved hjelp av Arcade kan vi skrive et enkelt uttrykk som beregner alderen ut fra dagens dato. Basert på globale variabler (hvert felt er en global variabel) og funksjoner kan vi få frem ny informasjon uten å lage nye attributtfelter:
if ($feature.forstedato != Null){
return year(Today())- year($feature.forstedato) + " år"
}
else {
return "Ukjent"
}
Forklaring:
1. Hvis datofeltet ikke er tomt
2. Returner dagens årstall minus datofeltets dato
3. Ellers returner "Ukjent"
Resultatet ser du på bildet
Eksempel på enkel symbolisering med Arcade
Et lag inneholder informasjon om skred som er gått. Vi ønsker å få et raskt overblikk over skredenes alder og eventuelle antall omkomne. Med Arcade kan vi symbolisere basert på flere attributter samtidig. For det gjeldende datasettet har vi et felt som inneholder antall omkomne og et felt som inneholder skredtidspunkt i form av dato. Ut fra datoen kan vi beregne alder som i eksempelet over.
Vi kan deretter kombinere de to feltene i symboliseringen ved bruk av to visuelle variabler – fargeintensitet og størrelse som vist på bildene.
Oppsummering
- Dynamiske etiketter og symbolisering er blitt mye enklere med Arcade
- Utrykkene er portable slik at de kan benyttes på tvers av ArcGIS Plattformen
- Syntaksen er nokså lik JavaScript – du kan deklarere variabler, utføre logiske operasjoner, utnytte innebyggede funksjoner samt lage egne funksjoner. Data referees til via globale variabler eller «globals». Globals begynner med dollartegn og representerer objekter i en tjeneste eller et lag, og de inneholder en geometri og et sett attributter.
- Variablene lar deg utføre beregninger på direkten og vi slipper derfor å opprette nye felter for å beregne verdier som ikke ligger eksplisitt i dataene våre.
Det er bare fantasien som setter grenser for hvordan du kan symbolisere og «lable» dine data med Arcade!