SDFIdk / FIRE

🔥 FIRE - FIkspunktREgister
https://sdfidk.github.io/FIRE/
MIT License
4 stars 8 forks source link

Tilføj `fire ts plot-gnss-5d` #711

Closed kbevers closed 4 months ago

kbevers commented 11 months ago

Analyseplots af 5D-punkter ønskes implementeres i FIRE, så der kan laves analyser af data direkte fra databasen. Der er tidligere lavet tilsvarende funktionalitet i Matlab, som siden her er oversat til Python. Se 5D-Analyse. Det eksisterende analyseprogram genererer figur i stil med nedenstående på baggrund af csv-filer og forskellige brugervalgte parametre.

RDIO

En tilsvarende implementering i FIRE bør placeres under fire ts, fx fire ts plot-gnss-5d der har et kommandolinjeinterface i stil med:

$ fire ts plot-gnss-5d --help                                                                    
Usage: fire ts plot-gnss-5d [OPTIONS] TIDSSERIE

  Analyse af en 5D  GNSS-tidsserie

  "TIDSSERIE" er et GNSS-tidsserie ID fra FIRE. Eksisterende GNSS-tidsserier
  kan fremsøges med kommandoen ``fire ts gnss <punktnummer>``.

Options:
  --uplift-model TEXT        Placering af alternativ upliftmodel
  --binsize INTEGER          Hvis antal dage mellem punkter er mindre end denne,
                             findes gennemsnit af dem.
  --min-koordinater INTEGER  Minimum påkrævet antal koordinater
  --alpha FLOAT              signifikansniveau i t-fordeling
  --db [prod|test]           Vælg en specifik databaseforbindelse - default_connection
                             i fire.ini bruges hvis intet vælges.
  -m, --monokrom             Vis ikke farver i terminalen
  --debug                    Vis debug output fra FIRE-databasen.
  --help                     Vis denne hjælp tekst

Ovenstående er et eksempel, der bør lægges mere tanke bag udvalg og navne på parametre.

Ligesom fire ts plot-gnss bør programmet åbne figuren uden at gemme den på computeren. Det kan brugeren selv gøre via vinduet der kommet frem, hvis der er behov for det.

I implementeringen af denne funktionalitet kan tages udgangspunkt i kildekoden til 5D-Analyse. Det forventes dog at der kræves en væsentlig omskrivning, da FIREs datastrukturer ikke er plug'n'play med fiveds. Ydermere er kildekoden i fived engelsksprog, hvor vi i FIRE stræber efter at bruge dansk. Det primære genbrug er formentligt selve figuropsætningen.

Se https://github.com/SDFIdk/FIRE/pull/678/files for et eksempel på hvordan en ny indgang til fire ts kan tilføjes. Konsulter evt. også https://github.com/SDFIdk/FIRE/pull/654 for baggrundsviden om GNSS tidsserier i FIRE.

Så vidt muligt bør funktioner til beregning af diverse statistik på tidsserierne tilføjes klassen GNSSTidsserie og dernæst benyttes i kommandolinjeprogrammet. Det skaber en bedre adskillelse mellem brugerinterface og beregningsfunktionalitet, og gør desuden de statistiske parametre let tilgængelige i andre sammenhænge.