Afstand og lejeberegning: LuckyTemplates geospatial analyse

Denne tutorial har til formål at diskutere, hvordan man beregner afstand og pejling i LuckyTemplates, og hvordan man effektivt bruger dem til.

Du kan finde en masse afstandsberegninger på nettet. Til denne demonstration vil jeg bruge et forenklet eksempel på en løsning, jeg skulle bygge til et af mine forsyningskædenetværksprojekter.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Jeg viser også beregningen af ​​den lige linjeafstand fra et leveringsdepot til servicesteder.

Her har jeg en skæremaskine til at vælge en afstand ved hjælp af en. Dette tillader dynamisk analyse af kunderne, flows, vægt, omsætning og enhver anden værdi inden for den valgte afstand.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Den store cirkelafstandsberegning, også kendt som Haversine- formlen , er kernemålet for denne øvelse. Hvis du mestrer denne teknik, kan du tackle enhver påkrævet afstand og lejeberegning.  

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Selvom jeg foretrækker at lave de fleste beregninger i Power Query, er det nødvendigt at bruge et DAX-mål, når du skal analysere dataene dynamisk baseret på den valgbare afstand.

Hvis den er tilgængelig, kan den faktiske afstand være den foretrukne mulighed. Du har dog ikke brug for dette i mange tilfælde, da den lige linjeafstand vil være tilstrækkelig. 

Google eller Bing API kan bruges til at tilføje afstanden i Power Query for både den faktiske og lige linjeafstand. Det er en god praksis at have flere værktøjer i din geospatiale værktøjskasse. Anvendelse af API til LuckyTemplates vil dog ikke blive diskuteret i denne vejledning. 

Indholdsfortegnelse

Forstå scenariet

Jeg blev bedt om at hjælpe med tildelingen af ​​de nærmeste pakkeskabe fra virksomhed til erhverv til serviceteknikeres hjemmeadresser.

Serviceingeniørerne arbejdede i foruddefinerede arbejdsområder, der kunne ændre sig over tid, og startede det job hjemmefra.

I løbet af natten foregik opfyldning af akutte reservedele til pakkeskabene. Den følgende morgen hentede ingeniøren reservedelene fra pakkeskabet på vej til sit arbejdsområde. 

Normalt bruger jeg GIS (Geographic Information System) software til at lave denne form for analyse. Men nu vil jeg prøve at gøre det med LuckyTemplates for at få en dynamisk allokeringsmodel. Jeg brugte også både den lige linjeafstand og lejeberegninger. 

GIS bruges pejlingsvinkel til navigation eller retning. I dette eksempel tilføjede jeg den pejling , der er konverteret til en retning ( Orientering ), fordi afstanden i sig selv ikke tilbyder den fulde løsning. 

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Det nærmeste pakkeskab kan være placeret i modsat retning af arbejdsområdet. Så jeg ville også vise retningen.

Dette gør det muligt at begrænse udvælgelsen af ​​skabstildelingen til at være baseret på tilsvarende geografiske overskrifter med arbejdsområdet. 

Som et eksempel er arbejdsområdet nord for hans hjem. Så den foretrukne pakkeskabsplacering skal være i samme retning. 

Analyse af afstands- og lejedatasættet

I dette forenklede eksempel omfatter datasættet adresser i Holland og de gratis pakkebokse.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Dette indeholder kolonner for breddegrad og længdegrad (til og fra ) , Depot , Navn , Deleværdi og Efterspørgsel .

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Ved siden af ​​den indledende tabel findes de beregnede kolonner og afstandsberegningerne i Excel. Først beregnede jeg radianerne.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Derefter oprettede jeg de faktiske afstandsberegninger for både miles og kilometer ved hjælp af radianerne og Haversine -formlen. 

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Beregning af afstand og pejling: Oprettelse af demodata

Beregningerne for pejlingen resulterer i første omgang i et decimaltal i grader. Så jeg er nødt til at konvertere dette til noget mere praktisk.

Jeg oprettede en tabelkolonne med graderne fra 1-360. Jeg tilføjede også en kolonne for anvisningerne i henhold til kompasset.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Desuden tilføjede jeg en SORT- kolonne til at sortere retningerne med uret i LuckyTemplates.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Derefter indlæste jeg sourceNL- datasættet og orienteringstabellen i Power Query.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Lad os tage et kig på sourceNL -tabellen.

Tilføjelse af kolonnerne

Først tilføjede jeg en indekskolonne . Når jeg laver transformationer i editoren, tilføjer jeg en indekskolonne enten til reference eller til sortering.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Derefter rundede jeg bredde- og længdegraden til 4 cifre , hvilket er vigtigt i større datasæt. Ved at gøre dette vil den returnere en nøjagtighed på 11 meter, hvilket stadig er nok.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Af hensyn til dette eksempel har jeg tilføjet hvert trin i en separat beregnet kolonne for at vise kortet. Jeg beregnede radianerne for bredde- og længdegradsværdierne, ligesom det jeg gjorde i Excel.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Derefter anvendte jeg Haversine -formlen til at beregne afstande både i miles og kilometer.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Leje og orientering

For lejet er beregningen en anden formel, som jeg tog fra nettet. Jeg har lige tilpasset det lidt for at passe til mit formål med dette

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Til at begynde med er denne beregning i radian. Det er fuldstændig ubrugeligt. Så jeg er nødt til at konvertere det.

Dette er Leje-fortrinnet . Dette er for at konvertere radianerne til det næste trin i min beregning.  

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Til næste trin ændrede jeg de negative tal og korrigerede dem ved at anvende denne beregning.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Derefter rundede jeg Pejlingen for at få et helt tal.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Jeg slettede kolonnerne Bearing (rad) , Bearing pre og Bearing . Derefter omdøbte jeg kolonnen Naar boven afronden til Bearing Roundup .

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Jeg kan nu flette kolonnen Bearing Roundup i denne tabel med BEARING kolonnen fra orienteringstabellen .

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Ved at gøre dette ville jeg være i stand til at få retningen.

Nu har jeg pejlingen ( Bearing Roundup ) og retningen ( Orientation_Direction ), som jeg vil bruge til den næste model.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Her er resultatet i Power Query.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

R Script til beregning af afstand og pejling

Til denne vil jeg bruge en løsning med et R-script . Dette er et datasæt med de beregnede afstande i miles og kilometer.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Jeg kører dette R-script , som er meget kortere og renere end formlerne.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Efter at have kørt R-scriptet har jeg nu 3 tabeller.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Her er outputtet. Jeg rundede det også af.

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Som du kan se, er resultaterne for R-script- beregningen og Excel-beregningen ens. 

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Tilføjelse af kortvisuals

Til sidst vil jeg tilføje en visuel visning til slutresultatet.

For at gøre det gentog jeg trinene i a. Jeg indlæste bordet med de 3 placeringer. Jeg indlæste også orienteringstabellen og datasættet ( selektion NL ) med kolonnen Sorter . Så slog jeg kolonner sammen til Orienteringen .

Afstand og lejeberegning: LuckyTemplates geospatial analyse

Dette fuldender den endelige model.

Afstand og lejeberegning: LuckyTemplates geospatial analyse




Konklusion

I denne rapport har jeg valgt at vise den retning kunden ser. Du kan vende dette om eller vise begge dele i din rapport, afhængigt af dine præferencer. Det eneste, der skal til, er at udveksle fra og til bredde- og længdegrad i beregningen.

Forhåbentlig bidrog denne vejledning til en bedre forståelse af afstanden og lejeberegninger generelt.

Tjek nedenstående links for flere eksempler og relateret indhold.

Skål!

Paul


Pipe In R: Tilslutningsfunktioner med Dplyr

Pipe In R: Tilslutningsfunktioner med Dplyr

I denne øvelse lærer du, hvordan du kæder funktioner sammen ved hjælp af dplyr-røroperatoren i programmeringssproget R.

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX fra LuckyTemplates giver dig mulighed for at returnere rangeringen af ​​et specifikt tal i hver tabelrække, der udgør en del af en liste over tal.

Udpakning af LuckyTemplates-temaer og -billeder fra PBIX

Udpakning af LuckyTemplates-temaer og -billeder fra PBIX

Lær, hvordan du adskiller en PBIX-fil for at udtrække LuckyTemplates-temaer og -billeder fra baggrunden og bruge den til at oprette din rapport!

Excel Formler Snydeark: Mellemvejledning

Excel Formler Snydeark: Mellemvejledning

Excel Formler Snydeark: Mellemvejledning

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det

Python i LuckyTemplates: Sådan installeres og konfigureres

Python i LuckyTemplates: Sådan installeres og konfigureres

Lær, hvordan du installerer programmeringssproget Python i LuckyTemplates, og hvordan du bruger dets værktøjer til at skrive koder og vise billeder.

Beregning af dynamiske fortjenestemargener – nem analyse af LuckyTemplates med DAX

Beregning af dynamiske fortjenestemargener – nem analyse af LuckyTemplates med DAX

Lær, hvordan du beregner dynamiske fortjenstmargener ved siden af ​​LuckyTemplates, og hvordan du kan få mere indsigt ved at grave dybere ned i resultaterne.

Sortering af datotabelkolonner i LuckyTemplates

Sortering af datotabelkolonner i LuckyTemplates

Lær, hvordan du sorterer felterne fra kolonner med udvidet datotabel korrekt. Dette er en god strategi at gøre for vanskelige felter.

Find dine topprodukter for hver region i LuckyTemplates ved hjælp af DAX

Find dine topprodukter for hver region i LuckyTemplates ved hjælp af DAX

I denne artikel gennemgår jeg, hvordan du kan finde dine topprodukter pr. region ved hjælp af DAX-beregninger i LuckyTemplates, herunder funktionerne TOPN og CALCUATE.

Junk Dimension: Hvad er det, og hvorfor det er alt andet end junk

Junk Dimension: Hvad er det, og hvorfor det er alt andet end junk

Lær, hvordan du bruger en uønsket dimension til flag med lav kardinalitet, som du ønsker at inkorporere i din datamodel på en effektiv måde.