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.
I denne øvelse vil jeg diskutere, hvordan man bruger funktionen Velkendt tekst i LuckyTemplates-ikonkortet. Dette blogindlæg vil yderligere forklare brugen af LuckyTemplates i geospatiale projekter.
DetKort er et af de mest alsidige og komplekse kortbilleder. Det tilbyder funktionalitet, som andre kortvisuals stadig mangler. Det understøtter forskellige kortformater, værktøjstip og hævder bedre datasikkerhed.
Til visualisering og analyse af strømme, såsom leveringsruter eller gasledninger, tilbyder Icon Map- visualen betydelige fordele.
Denne vejledning er ikke en demonstration af alle de ting, som ikonkortet kan. Dette er kun fokuseret på sammenhængen med at bruge WKT- strenge (Well Known Text).
Indholdsfortegnelse
Velkendt tekst (WKT) i LuckyTemplates-ikonkort
Velkendte tekststrenge er kombinationer af længde- og breddegrad adskilt af en prik . Kombination af disse i én post skaber linjer, former eller polygoner.
Du kan nemt konvertere dine bredde- og længdegradsdata i Power Query, hvis du ikke har en velkendt tekststreng .
Du kan importere LuckyTemplates Icon Map visual fra denne hjemmeside (når dette skrives, er dette stadig i betaversion).
Der er masser af arbejdseksempler på denne webside. Det visuelle og app-kilden understøtter dog ikke alle de seneste ændringer. Ifølge James Dales (udvikleren) afventer godkendelse fra Microsoft til betaversionen, når dette skrives.
Eksempelscenarie for brug af WKT-strenge i LuckyTemplates-ikonkort
For det første eksempel vil jeg vise, hvordan man viser flere lag med WKT- strenge til gasledninger. Jeg downloadede nogle oplysninger fra et websted for en gasudbyder i Holland. Jeg har taget stationerne og rørledningerne bare for at skabe dette eksempel.
1. Sammenfletning af forespørgsler
Den første del af dette eksempel er til fletning af forespørgsler.
Forespørgslen " tankstationer til sammenlægning " indeholder kolonnerne ID , Longitude og Latitude .
Først oprettede jeg længde- og breddegraden i kolonnerne med 2 divisioner ved at omarbejde tallene fra kolonnerne Longitude og Latitude . Som du kan se, ligner længdegraden kolonnen Division , og breddegraden svarer til kolonnen Division.1 .
Derefter tilføjede jeg kolonnen Indeks .
Jeg fjernede kolonnerne Længdegrad og Latitude .
Derefter rundede jeg den omarbejdede bredde- og længdegrad til fem cifre.
Afrunding til fem cifre resulterer i en nøjagtighed på omkring en meter, hvilket er godt nok i dette scenarie. Normalt runder jeg ned til fire bare for at spare mere hukommelse.
Jeg duplikerede forespørgslen " tankstationer til sammenlægning ", som har en nul-baseret indekskolonne og navngav den som " gasstationer1 "-forespørgsel.
I denne forespørgsel oprettede jeg en anden indekskolonne , der starter med 1 .
Mit mål i denne forespørgsel er at skabe par af længde- og breddegrad for hver tankstation . Kombiner derefter to sekventielle par til én tekststreng i én post . Dette vil repræsentere en sektion af rørledningen mellem stationerne.
Jeg brugte indekskolonnen til at flette de to forespørgsler. Som følge heraf vil posten med 1 som indeks i forespørgslen " gasstationer1 " og posten med 1 som indeks i den oprindelige forespørgsel ( gasstationer til sammenlægning ) blive flettet.
Jeg fulgte sekvensen i ID- kolonnen og forbandt stationerne i to par.
Så 141 og 71 er tilstødende stationer som vist i én post. Som et par repræsenterer de den særlige sektion af gasledningen. Det gælder også for 71 og 152 , og de efterfølgende poster i ID- kolonnen.
2. Udvidelse af tabellen
Efter at have flettet forespørgslerne baseret på kolonnen Indeks , skal jeg udvide tabellen og beholde kolonnerne ID , Latitude og Longitude . ID'et bruges som to-stationsdelen af det velkendte tekst- id . Jeg ændrede ikke navnene, fordi jeg ikke får brug for disse kolonner senere.
3. Oprettelse og sammenlægning af frastrengen og tostrengsstierne
Først oprettede jeg fromstring- og tostring- kolonnerne.
Derefter flettede jeg dem sammen til en kolonne og navngav den som " Flettet ".
4. Oprettelse af den velkendte tekst
Efter at have oprettet fromstring- og tostring- kolonnerne, oprettede jeg WKT-strengsøjlen .
Den velkendte tekst oprettes ved at tilføje søgeordet LINESTRING til den flettede kolonne.
Så den kvalificerer sig nu som en velkendt tekststreng , der vil blive accepteret af LuckyTemplates Icon Map Visual.
Den næste ting, jeg gjorde, var at fjerne den flettede kolonne.
Som du kan se, er der ingen værdi i den sidste række. Dette skyldes, at der ikke er nogen tilstødende station. Så jeg fjernede den sidste række.
Jeg tilføjede også en indekskolonne til sortering af det velkendte tekst- id, som jeg oprettede i visualiseringen.
Desuden tilføjede jeg kolonnen Velkendt tekst-id ( WKT ID ), som er en kombination af fraID- og toID- kolonnerne.
5. Tilføjelse af en værdi til visuelle data uden værdi
Jeg vil gerne tilføje en værdi til mine visuelle data, som ikke indeholder nogen værdi.
For at gøre dette oprettede jeg en kolonne med tilfældig værdi ved hjælp af List.Random- funktionen og kolonnen Indeks . Værdien kan så repræsentere trykket, mængden eller tiden uden vedligeholdelse. Dette er blot for at vise noget i det visuelle.
6. Udfyldning af felterne for LuckyTemplates Ikonkort Visuelt
Da jeg allerede har downloadet det visuelle ikonkort fra hjemmesiden, kan jeg blot klikke på det her.
Der er en vis kompleksitet i brugen af det visuelle på grund af de mange tilgængelige indstillinger. Jeg guider dig hurtigt igennem nogle af dem.
De påkrævede felter, for at det visuelle skal virke, er markeret som " (påkrævet) ".
For at vise stationerne eller benzinledningerne tilføjede jeg både WKT-id'et og WKT-strengen i feltet Kategori .
Jeg tilføjede også længde- og breddegrad.
Derefter tilføjede jeg målingen Samlede mængder i feltet Størrelse .
Målingen for samlede mængder er summen af kolonnen Mængde inde i tabellen over tankstationer1 .
Som du kan se, har jeg allerede et kort her. Det er dog ikke rigtig, hvad jeg vil endnu.
7. Ændring af det visuelle ikonkort i LuckyTemplates
Jeg skal lave nogle etiketter for at få det til at se bedre ud. Så jeg placerede WKT ID- kolonnen i feltet Label .
Jeg har også et simpelt farvemål, og det sætter jeg på banen her.
Jeg kan nu bruge dette kort til at vise tankstationer som denne.
Ved at klikke her kan jeg også få vist laget af gasledninger.
Der er dog stadig nogle ting, jeg skal gøre, så jeg kan få det til at se bedre ud.
For at starte går jeg til formateringsruden . Derefter, under Lagene , vælger jeg Støvdrageren – TonerLite . Dette giver et udvalg af forskellige typer baggrunde
Jeg valgte dette kort, fordi det er flot og gråt. Det giver også en god afspejling af de farver, som jeg vil bruge.
Der er også forskellige muligheder for lag her. For eksempel vil jeg aktivere OpenRailMap her.
Dette vil derefter tilføje jernbanelinjer (repræsenteret i orange farve) på kortet.
Under kortstyringen deaktiverer jeg indstillingerne Zoom og Lasso Select for at gøre kortet renere.
Derefter aktiverer jeg muligheden Etiketter her.
Her kan du se de etiketter, der refererer til stationen eller sektionen af rørledningen .
Jeg valgte også alle mulighederne under WKT , fordi de også har indflydelse på kortvisningen.
Jeg øgede også tykkelsen af linjerne for linjelagene ved at øge værdien af Line Width her. Desuden ændrede jeg dens Opacity til 100% for at få den til at skille sig ud.
Jeg var i stand til at styre værktøjstip her. I dette eksempel vil jeg overlade det til standardindstillingen.
Under Fremhævningen har jeg indstillet forskellige værdier for opaciteten for valgte elementer og opaciteten for ikke-markerede elementer .
Sådan ser det ud, når du vælger én linje på kortet. Du kan se, at de andre linjer stadig er synlige, fordi opaciteten af den umarkerede er sat til 20 .
Ved at ændre opaciteten af de umarkerede til 1 , vil de være fuldstændig usynlige.
Jeg aktiverede også indstillingen Reveal under map , fordi jeg muligvis kunne bruge den under visse omstændigheder.
Så aktiverede jeg automatisk zoom .
Der er også andre tilgængelige indstillinger, som jeg kan prøve og spille rundt.
Størrelsen af disse cirkler på kortet kan også ændres. Under datakortobjekter skal du blot ændre min. Størrelse for minimumsstørrelsen og Max. Størrelse for den maksimale størrelse.
I dette eksempel brugte jeg 20 for den maksimale størrelse og 3 for den mindste størrelse .
8. Tilføjelse af et værktøjstip
Jeg har lavet et simpelt værktøjstip, der ser sådan ud.
Jeg kunne bruge det værktøjstip her. Under Type- indstillingen valgte jeg værktøjstip- indstillingen, som er navnet på det værktøjstip, jeg oprettede. Bemærk, at denne værktøjstip- indstilling her er forskellig fra værktøjstip , som jeg tidligere nævnte.
Efter det, mens jeg svæver over mit kort, kan du se værktøjstip, som jeg oprettede.
Afhængigt af det kort, du opretter, er de andre indstillinger muligvis ikke relevante. Som du kan se, kan indstillingerne være overvældende, men de bidrager alle til et bedre kortudseende.
9. Udgangen
Nu har jeg et kort, der kan vise flere lag. Jeg kan skifte mellem de stationer, som jeg kan vise som cirkler eller linjer.
Efter at have gennemført de foregående trin, er det nu muligt at tilføje en tabel, der afspejler de valg, du foretager på kortet.
I dette eksempel kan jeg vælge et punkt her, og det vil vise det punkt på kortet.
Jeg kan også bruge søgefunktionen her. For eksempel, hvis jeg skriver 61 , vil det også vise disse punkter på kortet.
Til sidst kan jeg bare vælge et element på kortet ved blot at klikke på det. Derefter vil det blive vist på bordet.
Det afslutter den første del af denne velkendte tekst- tutorial.
Eksempel på LuckyTemplates-ikonkortscenario baseret på leveringsruter
I dette andet eksempel ser jeg på leveringsruter . Igen er det meste af arbejdet udført i. Den måde, jeg håndterede data på i det første eksempel, er ikke meget forskellig fra det, jeg brugte i dette eksempel. Men jeg har stadig helt andre data i dette eksempel.
I dette andet eksempel vil jeg analysere ruterne fra flere køretøjer, der er fra forskellige depoter. Vis dem derefter som lige linjer, der forbinder fra og til steder på hver leveringsrute.
Afhængigt af, hvad der er tilgængeligt i dine data, kan du analysere emissionen pr. stop , brændstofforbruget , stoptiden og mange flere. Dette eksempel viser kun vægt og omsætning .
Et af mine nuværende projekter søger at beregne emissionerne på tværs af flere typer køretøjsruter og de forskellige omstændigheder. Dette krævede et svar fra transportudbud.
1. Datasættet
De data, jeg brugte, stammede fra et transportstyringssystem. Der er forskellige måder, hvorpå data kan blive tilgængelige. De kan være fra forskellige typer transportstyringssystemer , fra et ruteoptimeringsprogram eller fra en bordcomputer .
I Power Query har jeg i øjeblikket fem forespørgsler. Først er en farvetabel til at styre farvedisplayet for ruterne.
Jeg har også to forespørgsler, der er dubletter af rutedataforespørgslen med en del af Power Query-datatransformationen. Jeg kaldte dem WKT-forberedelse ( Velkendt tekstforberedelse ) og næste stop ( Forberedelse til næste stop ). Disse to bruges til at flette de nødvendige oplysninger med hovedforespørgslen til rutedata .
Der er et par måder, hvordan du kan opfylde et af de vigtigste krav i dette tilfælde. Og det er at få navnet , breddegraden og længdegraden af den næste række ind i den forrige række for at vise rækkefølgen af leveringen.
Det næste er at vise det afgående og ankommende depot i de rigtige kolonner.
Til sidst oprettede jeg en velkendt tekststreng .
Jeg brugte både indeksmetoderne og fletning med forskudte indekser nul til en eller en til to for at justere posterne. Jeg brugte også en brugerdefineret kolonneløsning, hvor indeksnummeret plus 1 vil returnere den næste række.
Dette kan medføre hukommelsesproblemer i større datasæt.
Så det er at foretrække at bruge metoden til at fusionere baseret på indekskolonnen, da det er meget mere enkelt.
Jeg har også rutedataforespørgslen . Dette vil blive indlæst i modellen.
Depotforespørgslen indeholder oplysninger om start og slutpunkt for hver rute . Jeg har også flettet denne forespørgsel med rutedataforespørgslen .
Modellen og de underliggende data vil være tilgængelige som reference. Jeg foreslår, at du går gennem de anvendte trin i dit eget tempo fra at flette Depot- forespørgslen for at få bredde- og længdegrad. Fortsæt derefter til trinnet for næste stop med at flette for at tilføje den velkendte tekst til dataene. Derefter kan du gå videre til at udføre trinene til den endelige oprydning.
Jeg indlæste tabellerne Depoter , Farver og Rutedata . Jeg skabte også en forbindelse i datamodellen.
Så nu kan jeg begynde med visualiseringen.
2. Ikonkortvisualisering
Ikonkortet viser nu ruterne. Den tilføjede også de relevante data i feltrækken. Indstillingerne i formateringsruden ligner indstillingerne i det første eksempel, som viser tankstationerne.
Jeg tilføjede et par mål for at beregne antallet af stop på ruterne, omsætningen og vægten . Disse blev lagt i kortene.
Efter tilføjelse af en tabel og udskæringer for depot-id'et og depotnavnet er det grundlæggende ruteanalyse-dashboard færdigt. Dette er nu dynamisk, da jeg kan foretage de valg, jeg ønsker, og resultaterne vises i overensstemmelse hermed.
Konklusion
Det er dybest set, hvordan man bruger velkendte tekststrenge i en LuckyTemplates-ikonkortvisual. I denne vejledning var du i stand til at lære, hvordan du viser flere lag med WKT til flowdata såsom et gasnet eller køretøjsruter i det visuelle ikonkort.
Husk, at tilføjelse af relevante og påkrævede datafelter også er afgørende for at få analyserapporten til at fungere korrekt.
Tjek nedenstående links for flere eksempler og relateret indhold.
Skål!
Paul
I denne øvelse lærer du, hvordan du kæder funktioner sammen ved hjælp af dplyr-røroperatoren i programmeringssproget R.
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.
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
LuckyTemplates kalendertabel: Hvad er det, og hvordan man bruger det
Lær, hvordan du installerer programmeringssproget Python i LuckyTemplates, og hvordan du bruger dets værktøjer til at skrive koder og vise billeder.
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.
Lær, hvordan du sorterer felterne fra kolonner med udvidet datotabel korrekt. Dette er en god strategi at gøre for vanskelige felter.
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.
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.