Indholdsfortegnelse:
- Forbrugsvarer
- Trin 1: Sådan fungerer det
- Trin 2: Opret en indledende tilstandsdatabucket
- Trin 3: Opret et Google Script
- Trin 4: Et eksempel på regneark
- Trin 5: Angivelse af tidsstempler (streamdata fra fortiden)
- Trin 6: Konklusion
Video: Stream data fra Google Sheets til et dashboard: 6 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Regneark udmærker sig ved at manipulere data, men ikke vise dem. Det er netop derfor, at så mange specialiserede datavisualiseringer og BI -dashboardvirksomheder begyndte at dukke op. Problemet med de fleste af disse produkter er, at de typisk er dyre og svære at sætte op. Denne vejledning viser dig en enkel og billig måde at oprette et smukt, opdaterbart dashboard i realtid på fra dine Google Sheets-data.
Forbrugsvarer
- Google Sheets: Et kraftfuldt regneark, du kan bruge i din webbrowser (gratis).
- Initial State: En datastreaming og visualiseringstjeneste, som du kan bruge til at oprette dashboards i realtid i din webbrowser (gratis for studerende, $ 9,99/måned eller $ 99/år for alle andre).
Trin 1: Sådan fungerer det
Initial State er en datastreamingtjeneste, hvilket betyder, at du kan skubbe tidsseriedata (dvs. data med et tidsstempel) til dets API. Med andre ord, hvis temperaturen er 50 grader kl. 17:45, kan vi nemt sende disse oplysninger som et datapunkt til Initial State API. Når disse data er på din konto, kan du vise disse data i visualiseringer og opbygge et brugerdefineret datadashboard, som du kan se i din webbrowser. Du skal bare få Google Sheets til at sende data fra dit regneark til din oprindelige tilstandskonto, når du vil have dem sendt.
Google Sheets har en fantastisk scriptfunktion, som vi kan bruge til at opbygge en brugerdefineret funktion til netop det. Vi skal bare skrive en funktion i Google Script, der sender data til Initial State API. Det er let at kalde den funktion i dit regneark, og du kan sende de data, vi ønsker
Trin 2: Opret en indledende tilstandsdatabucket
Tilmeld dig en Initial State -konto her, hvis du ikke allerede har en. Når du er registreret og logget ind, skal du klikke på ikonet +cloud øverst på din bucket -hylde for at oprette en ny databucket. Dette er destinationen for dine streaming Google Sheets -data. For at sende data til denne spand skal du bruge to nøgler. Den ene er din private kontos adgangsnøgle, der leder data til din konto. Den anden nøgle er Bucket -nøglen, som bruges til at angive, hvilken dataskovl i din konto dataene skal gå ind på. Du kan angive det Bucket Key -navn, du vil have, i dialogboksen New Stream Bucket. Din adgangsnøgle vises også. Klik på knappen Opret for at oprette denne nye dataskovl. Du vil se den nye dataskovl på din skovlhylde. Du kan klikke på linket Indstillinger under databucket -navnet for at se Bucket -nøglen og adgangsnøglen. Du skal bruge disse nøgler til det næste trin. Din Data Bucket i den oprindelige tilstand er klar til at modtage data.
Trin 3: Opret et Google Script
Opret et nyt Google Sheets -regneark. Klik på Værktøjer -> Script editor for at åbne Google Script editor. Kopier og indsæt følgende funktion i din script -editor:
function streamData (signalnavn, værdi, aktiver) {
var accessKey = 'LÆG DIN ADGANGNØGLE HER'; var bucketKey = 'LÆG DIN BUCKET NØGLE HER'; hvis (! signalnavn) {signalName = 'UnknownData'; } hvis (aktiver) {var url = 'https://groker.init.st/api/events?accessKey=' + accessKey + '& bucketKey =' + bucketKey + '&' + encodeURIComponent (signalnavn) + '=' + encodeURIComponent (værdi); UrlFetchApp.fetch (url); return signalName + '=' + værdi; }}
Du bliver nødt til at placere din kontos initialnøgleadgangsnøgle på linje 2 og din oprindelige tilstandsbucket -nøgle på linje 3, hvor det er angivet. Klik på Fil -> Gem for at gemme dette script og anvende alle ændringer (hvis du ikke gemmer dine ændringer, kan dit regneark ikke bruge denne nye funktion).
Lad os se på den funktion, vi lige har oprettet. streamData (signalnavn, værdi, aktiver) kræver tre inputparametre. signalName er navnet på datastrømmen (f.eks. temperatur). værdi er datastrømens aktuelle værdi (f.eks. 50). enable er enten SAND eller FALSK og bruges til at styre, hvornår vi rent faktisk sender data til vores dataskovl. Linje 8 er kodelinjen, der rent faktisk kalder Initial State API ved hjælp af URL -parametre.
Du kan teste dette ved at redigere en celle på dit regneark med formlen: = streamData (“myNumber”, 1, TRUE) og trykke på ENTER. Hvis data blev sendt med succes, skulle cellen returnere myNumber = 1.
Gå tilbage til din Initial State -konto, og klik på din nye dataskovl. Du skulle se, at tallet 1 blev sendt til en ny datastrøm ved navn myNumber. Leg med at ændre værdien og signalnavnet, og se dit dashboard ændre sig.
Trin 4: Et eksempel på regneark
Dette link fører dig til et eksempel regneark, der bruger funktionen streamData to forskellige steder, et til at sende værdien af myNumber og et andet til at sende værdien af myString. Du bliver nødt til at kopiere dette eksempel og gentage trin 2 for at tilføje din egen Google Script -funktion til at lege med dette regneark. Aktiveringen er angivet i C2. Du skal blot ændre dette til FALSKT for at foretage ændringer uden at sende uønskede data til din dataskovl og tilbage til SAND for at aktivere datastreaming.
Bemærk, at du kan streame tal, strenge eller endda emojis til dit dashboard. Når som helst en inputvariabel ændres, udfører og sender streamData -funktionen data.
Trin 5: Angivelse af tidsstempler (streamdata fra fortiden)
Det første eksempel sender simpelthen data via URL -parametre, når et datainput til vores Google Script -funktion ændres. Tidsstemplet, der bruges til dette datapunkt, er uanset hvilket tidspunkt API'en modtager dataene. Hvad hvis du vil angive et tidsstempel? For eksempel, hvad hvis du vil sende data fra en måned siden til dit dashboard? Initial State API (dokumentation her) tillader os at gøre netop det. Vi skal bare skrive en anden Google Script -funktion, der indtager tidsstemplet som et inputparameter:
function streamDataTime (signalnavn, værdi, tidsstempel, aktiver) {
hvis (! signalnavn) {signalName = 'UnknownData'; } var headersIS = {'X-IS-AccessKey': 'PLACE DIT ACCESS KEY HERE', 'X-IS-BucketKey': 'PLACE DIN BUCKET KEY HERE', 'Accept-Version': '~ 0'} var data = {'key': signalName, 'value': value, 'iso8601': tidsstempel}; var options = {'method': 'post', 'contentType': 'application/json', 'headers': headersIS, 'payload': JSON.stringify (data)}; hvis (aktiver) {UrlFetchApp.fetch ('https://groker.init.st/api/events', optioner); return signalName + '=' + værdi; }}
Google Script ovenfor tilføjer en tidsstempelindgangsparameter. Dette script kalder Initial State API ved at sende et JSON -objekt via en HTTPS POST. Alt du skal gøre er at angive din Initial State Access Key og Bucket Key på linje 6 og 7.
Tidsstemplet skal være iso8601 -formateret (info om iso8601). Et eksempel iso8601 tidsstempel er “2019-01–01T18: 00: 00-06: 00”. Dette tidsstempel svarer til 1. januar 2019 kl. 18.00 CT. “-06: 00” -delen af tidsstemplet angiver tidszone. Hvis du ikke angiver din tidszone, formodes tiden at være UTC. Når du ser dine data i Initial State in Tiles, bruges din browsers lokale tidszone til at vise dine data.
Dette link fører dig til et eksempel på et regneark, der bruger funktionen streamDataTime i kolonnen F. Du bliver nødt til at kopiere dette eksempel og gentage trin 2 for at tilføje din egen Google Script -funktion til at lege med dette regneark. Dette eksempel logger antallet af besøgende på webstedet for hver dag i måneden i januar.
Streaming af dette eksempels regneark til et Initial State -dashboard kan ligne ovenstående (du kan se dette dashboard på https://go.init.st/v8sknuq). Læg mærke til tidslinjen øverst på instrumentbrættet på linje med de tidsstempler, der er angivet i Google Sheets -data (kolonne D). Dette instrumentbræt bruger en måler og emojis til at tilføje kontekst til fliser. Du kan importere dette nøjagtige dashboardlayout til dit eksempel ved at følge disse instruktioner. Du kan tilføje et baggrundsbillede til dit dashboard for at give dine data mere kontekst.
Trin 6: Konklusion
Du kan tilføje et vilkårligt antal KPI'er til et Google Sheets -regneark og streame dem til et dashboard ved hjælp af de grundlæggende principper i dette eksempel. Du kan konfigurere flere regneark til at sende data til et enkelt dashboard. Du kan konfigurere sensorer eller andre applikationer til at sende data til det samme dashboard som dit Google Sheets -regneark og endda matematisk kombinere de forskellige datakilder inde i dit dashboard.
Anbefalede:
Sådan sender du data fra M5Stack StickC til Delphi: 6 trin
Sådan sender du data fra M5Stack StickC til Delphi: I denne video lærer vi, hvordan du sender værdier fra StickC -kort til Delphi VCL -applikation ved hjælp af Visuino. Se videoen
Føj let Google Maps til dine Google Sheets automatisk og gratis: 6 trin
Føj let Google Maps til dine Google Sheets automatisk og gratis: Ligesom mange producenter har jeg bygget få GPS -tracker -projekter. I dag vil vi hurtigt kunne visualisere GPS -punkter direkte i Google Sheets uden at bruge noget eksternt websted eller API. Bedst af alt, det er GRATIS
Sende data om trådløs vibration og temperatur til Google Sheets ved hjælp af Node-RED: 37 trin
Sender data om trådløs vibration og temperatur til Google Sheets ved hjælp af Node-RED: Introduktion til NCD's Long Range IoT Industrial trådløse vibrations- og temperatursensor, der kan prale af op til en 2-mile rækkevidde ved brug af en trådløs mesh-netværksstruktur. Denne enhed indeholder en præcision 16-bit vibrations- og temperatursensor og trans
CloudyData - ESP8266 til Google Sheets Made Simple: 10 trin (med billeder)
CloudyData - ESP8266 til Google Sheets Made Simple: Jeg har ledt efter skydatalagring i lang tid i løbet af de sidste år: det er interessant at overvåge data fra enhver form for sensor, men det er mere interessant, hvis disse data er tilgængelige overalt uden eventuelle opbevaringsproblemer som f.eks. brug af SD
Opsætning fra bunden af en Raspberry Pi til logdata fra Arduino: 5 trin
Opsætning fra bunden af en Raspberry Pi til logdata fra Arduino: Denne vejledning er for dem, der ikke har erfaring med at installere en ny hardware eller software, endsige Python eller Linux. Lad os sige, at du har bestilt til Raspberry Pi (RPi) med SD kort (mindst 8 GB, jeg brugte 16 GB, type I) og strømforsyning (5V, mindst 2