abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 23:55 | Komunita

    Ubuntu 26.04 LTS bude (𝕏) Resolute Raccoon (rezolutní mýval).

    Ladislav Hagara | Komentářů: 0
    včera 21:00 | Nová verze

    Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    včera 20:11 | Komunita

    Linuxová distribuce Frugalware (Wikipedie) ke konci roku 2025 oficiálně končí.

    Ladislav Hagara | Komentářů: 0
    včera 17:22 | Nová verze

    Byla vydána nová verze 3.0.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP bude brzy k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | IT novinky

    Americký výrobce čipů AMD uzavřel s americkou společností OpenAI smlouvu na několikaleté dodávky vyspělých mikročipů pro umělou inteligenci (AI). Součástí dohody je i předkupní právo OpenAI na přibližně desetiprocentní podíl v AMD.

    Ladislav Hagara | Komentářů: 1
    včera 12:22 | Nová verze Ladislav Hagara | Komentářů: 0
    5.10. 20:00 | Komunita

    Byly zpracovány a na YouTube zveřejněny videozáznamy z konference LinuxDays 2025.

    Ladislav Hagara | Komentářů: 0
    4.10. 15:22 | IT novinky

    Na konferenci LinuxDays 2025 byl oficiálně představen nový router Turris Omnia NG.

    Ladislav Hagara | Komentářů: 34
    4.10. 05:22 | Komunita

    Přímý přenos (YouTube) z konference LinuxDays 2025, jež probíhá tento víkend v Praze v prostorách FIT ČVUT. Na programu je spousta zajímavých přednášek.

    Ladislav Hagara | Komentářů: 16
    3.10. 22:44 | IT novinky

    V únoru loňského roku Úřad pro ochranu osobních údajů pravomocně uložil společnosti Avast Software pokutu 351 mil. Kč za porušení GDPR. Městský soud v Praze tuto pokutu na úterním jednání zrušil. Potvrdil ale, že společnost Avast porušila zákon, když skrze svůj zdarma dostupný antivirový program sledovala, které weby jeho uživatelé navštěvují, a tyto informace předávala dceřiné společnosti Jumpshot. Úřad pro ochranu osobních údajů

    … více »
    Ladislav Hagara | Komentářů: 10
    Jaké řešení používáte k vývoji / práci?
     (38%)
     (45%)
     (15%)
     (17%)
     (22%)
     (15%)
     (18%)
     (16%)
     (15%)
    Celkem 181 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    Rozcestník

    Dotaz: Úprava záznamů pro grafy

    16.4.2016 16:31 Deryl | skóre: 11
    Úprava záznamů pro grafy
    Přečteno: 1242×

    Zdravím,

    sbírám data z elektroměru a ukládám do tabulky (MariaDB):

           time               averagePower
    2016-04-10 10:01:00           270
    2016-04-10 10:02:00           290
    2016-04-10 10:03:00           280
    2016-04-10 10:04:00           300
    2016-04-10 10:05:00           280
    

    Data lze interpretovat:

    v průběhu 2016-04-10 10:00:00 až 10:01:00 byla průměrná spotřeba 270 W;
    v průběhu 2016-04-10 10:01:00 až 10:02:00 byla průměrná spotřeba 290 W;
    atd.

    Data bych rád zobrazil v grafu (pro web) následovně:

    300                            --------
    290              --------      |      |
    280              |      |-------      --------
    270       --------                           |
    260       |                                  |
            10:00  10:01  10:02  10:03  10:04  10:05
    

    Jsa ohledně zpracování hromadnějších dat laik, hledám nápovědu, jakým směrem se vydat:

    • nejsnazší se jeví ukládat do db všechny hodnoty, které potřebuji pro vytvoření grafu - tj. prakticky duplikovat každý záznam s časem -1 minuta;
    • chybějící data řešit programově v momentu požadavku na generování grafu - lze toto pomocí SQL query?;
    • použít knihovnu či javascript pro grafy (cokoliv rozumného pro dynamický web, s výpočty ideálně na straně klienta), která to umí "sama".
    Nerad bych objevoval slepé cesty, poradíte někdo, jak to nejlépe pojmout?

    Řešení dotazu:


    Odpovědi

    16.4.2016 16:52 NN
    Rozbalit Rozbalit vše Re: Úprava záznamů pro grafy
    Cestou rrd databaze?
    16.4.2016 17:31 Deryl | skóre: 11
    Rozbalit Rozbalit vše Re: Úprava záznamů pro grafy
    Problém je jinde: hodnota "value" není aktuální stav něčeho v daný moment (time), ale průběh trvající na stejné úrovni od minulého měření.

    Všechny jednoduché grafy namalují přímou spojnici mezi "values", tj. bez duplicitních záznamů budou spojnice šikmé - takový druh grafu se hodí např. pro zobrazování aktuální teploty (tj. spojnice aproximuje teplotu v mezičase mezi měřeními), ale ne pro průběhovou veličinu.

    Odkážu-li se k výše uvedenému příkladu, spojnice mezi 10:01 a 10:02 (dle záznamů v db) by stoupala z 270 na 290, tj. vizuálně by se dalo odečíst, že spotřeba v 10:01:30 je 280 W.

    Tak tomu ovšem není, protože v intervalu mezi 10:01 - 10:02 byla spotřeba (průměrná, v jakémkoliv okamžiku) 290 W - což je na náčrtu grafu v dotazu jednoznačně patrné.

    Jinými slovy řeším, jak interpretovat data z db v grafu: zda duplikovat záznamy pro účely přípravy grafu např. do dočasné tabulky nebo zda to umí nějaká javascript knihovna "on-the-fly".

    Viz např. příspěvek zde: https://community.openhab.org/t/persist-strategy-everychange-incl-the-last-known-value-before-change/7571 obsahující ukázku grafů.
    16.4.2016 17:39 Deryl | skóre: 11
    Rozbalit Rozbalit vše Re: Úprava záznamů pro grafy

    červená linka ukazuje spojnice mezi body v db, modrá linka ukazuje požadovanou interpretaci.

    (Zdá se, že sem nelze vložit odkaz na obrázek, tak alespoň viz příloha.)

    16.4.2016 20:55 Filip Jirsák
    Rozbalit Rozbalit vše Re: Úprava záznamů pro grafy
    Pokud se ty záznamy ukládají každou minutu, i když zůstává spotřeba stejná, nevím, co na tom chcete řešit – stačí jenom zvolit sloupcový graf a ne spojnicový, a hodnoty na ose X nezarovnávat do prostředka sloupce, ale na jeho pravý okraj.
    16.4.2016 21:32 Deryl | skóre: 11
    Rozbalit Rozbalit vše Re: Úprava záznamů pro grafy
    Toto bude nejsnazší řešení - zkoušel jsem HighCharts, tam se mi sloupce podařilo zarovnat.
    16.4.2016 20:07 Filip Jirsák
    Rozbalit Rozbalit vše Re: Úprava záznamů pro grafy
    Nejlepší by byla třetí varianta, ale žádnou knihovnu vám z hlavy neporadím. Ale ta duplicitní data si případně můžete na klientovy snadno připravit sám. Druhá varianta je možná v plnohodnotných SQL databázích – vygenerujete si sadu záznamů se zvolenou granularitou (ve vašem případě 1 minuta), a tu spojíte s daty z tabulky (vždy použijete nejbližší vyšší nebo shodnou hodnotu). V MySQL/MariaDB byste si ale tu funkci pro generování sady záznamů asi musel napsat sám (nenašel jsem, že by měla něco takového, jako je třeba v PostgreSQL generate_series).
    Josef Kufner avatar 16.4.2016 21:34 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Úprava záznamů pro grafy
    Hello world ! Segmentation fault (core dumped)
    17.4.2016 12:59 Deryl | skóre: 11
    Rozbalit Rozbalit vše Re: Úprava záznamů pro grafy
    Od Flotu mne trochu odrazuje, že už na to dva roky nikdo nesáhl (github), což je škoda. Dokonalostí to asi nebude (328 issues, 122 pull reqs).
    Josef Kufner avatar 17.4.2016 14:26 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Úprava záznamů pro grafy
    Když jsem ho před pár lety používal, fungoval velice hezky. Na Githubu vypadá trochu mrtvě, ale jinak to je zralý nástroj.
    Hello world ! Segmentation fault (core dumped)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.