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í
×
    dnes 12:11 | IT novinky

    Včera večer měl na YouTube premiéru dokumentární film Python: The Documentary | An origin story.

    Ladislav Hagara | Komentářů: 0
    včera 23:33 | Nová verze

    Společnost comma.ai po třech letech od vydání verze 0.9 vydala novou verzi 0.10 open source pokročilého asistenčního systému pro řidiče openpilot (Wikipedie). Zdrojové kódy jsou k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 21:55 | Nová verze Ladislav Hagara | Komentářů: 2
    včera 14:11 | IT novinky

    Řada vestavěných počítačových desek a vývojových platforem NVIDIA Jetson se rozrostla o NVIDIA Jetson Thor. Ve srovnání se svým předchůdcem NVIDIA Jetson Orin nabízí 7,5krát vyšší výpočetní výkon umělé inteligence a 3,5krát vyšší energetickou účinnost. Softwarový stack NVIDIA JetPack 7 je založen na Ubuntu 24.04 LTS.

    Ladislav Hagara | Komentářů: 4
    včera 00:44 | Bezpečnostní upozornění

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) spolu s NSA a dalšími americkými úřady upozorňuje (en) na čínského aktéra Salt Typhoon, který kompromituje sítě po celém světě.

    Ladislav Hagara | Komentářů: 24
    27.8. 16:33 | IT novinky

    Společnost Framework Computer představila (YouTube) nový výkonnější Framework Laptop 16. Rozhodnou se lze například pro procesor Ryzen AI 9 HX 370 a grafickou kartu NVIDIA GeForce RTX 5070.

    Ladislav Hagara | Komentářů: 1
    27.8. 14:22 | IT novinky

    Google oznamuje, že na „certifikovaných“ zařízeních s Androidem omezí instalaci aplikací (včetně „sideloadingu“) tak, že bude vyžadovat, aby aplikace byly podepsány centrálně registrovanými vývojáři s ověřenou identitou. Tato politika bude implementována během roku 2026 ve vybraných zemích (jihovýchodní Asie, Brazílie) a od roku 2027 celosvětově.

    Fluttershy, yay! | Komentářů: 7
    27.8. 13:11 | Nová verze

    Byla vydána nová verze 21.1.0, tj. první stabilní verze z nové řady 21.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.

    Ladislav Hagara | Komentářů: 0
    27.8. 05:11 | Komunita

    Alyssa Anne Rosenzweig v příspěvku na svém blogu oznámila, že opustila Asahi Linux a nastoupila do Intelu. Místo Apple M1 a M2 se bude věnovat architektuře Intel Xe-HPG.

    Ladislav Hagara | Komentářů: 19
    26.8. 12:55 | IT novinky

    EU chce (pořád) skenovat soukromé zprávy a fotografie. Návrh "Chat Control" by nařídil skenování všech soukromých digitálních komunikací, včetně šifrovaných zpráv a fotografií.

    Ladislav Hagara | Komentářů: 83
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (79%)
     (9%)
     (3%)
     (4%)
     (5%)
     (1%)
    Celkem 104 hlasů
     Komentářů: 9, poslední včera 11:53
    Rozcestník

    Dotaz: python + gnuplot + time na ose x

    19.6.2012 15:43 Peter S.
    python + gnuplot + time na ose x
    Přečteno: 314×
    Ahoj

    celý den sa morím s jedným skriptom (python) ktorý ma použiť gnuplot a urobiť graf. Graf je fakt primitívny - jedna čiara. V shelly by som to asi nejako dal dokopy ale python ma takú nejasnú syntax. Takže výcuc z môjho skriptu je:
    import Gnuplot
    
    data=[['19/06/2012-12:27:49', '0.83'], ['19/06/2012-12:27:51', '0.00'], ['19/06/2012-12:27:53', '11.78'], ['19/06/2012-12:27:55', '0.00'], ['19/06/2012-12:27:57', '0.60'], ['19/06/2012-12:27:59', '0.00'], ['19/06/2012-12:28:01', '0.00'], ['19/06/2012-12:28:03', '0.80'], ['19/06/2012-12:28:05', '0.00'], ['19/06/2012-12:28:07', '0.00'], ['19/06/2012-12:28:09', '0.00'], ['19/06/2012-12:28:11', '0.60'], ['19/06/2012-12:28:13', '0.00']]
    
    chart=Gnuplot.Gnuplot(persist=1)
    
    chart('set terminal png')
    chart('set out "out.png')
    chart('set xdata time')
    set_timefmt='set timefmt "%d/%m/%Y-%H:%M:%S"'
    chart(set_timefmt)
    set_xformat='set format x "%d/%m-%H:%M"'
    chart(set_xformat)
    chart('set ylabel "%"')
    chart('set yrange [0:1]')
    
    chart('set grid')
    chart('set style data lines')
    
    
    for d in data:
    	chart.plot(d[0],d[1])
    Výstup v konzole vyzerá takto:
    gnuplot> plot 19/06/2012-12:27:49 , 0.83 
                               ^
             line 0: ';' expected
    
    
    gnuplot> plot 19/06/2012-12:27:51 , 0.00 
                               ^
             line 0: ';' expected
    
    a opakuje sa to dalej. Graf nejaký vytvorí ale bez údajov (čiary) a s nezmyselnými dátumami

    Budem vdačný za každú pomoc, dokumentácia alebo príklady pre túto kombináciu teda python+gnuplot+časová os prakticky na google nie sú, resp. dokonca som našiel nezodpovedanú otázku presne s týmto problémom...

    Takže vopred vďaka

    PS: Teoreticky môžem použiť inú utilitu na robenie grafov, python by mal ostať a dotyčná utilita by mala byť dostupná aj na python3

    Odpovědi

    19.6.2012 21:05 l4m4
    Rozbalit Rozbalit vše Re: python + gnuplot + time na ose x
    Modul Gnuplot nepoužívám -- buď python-friendly matplotlib, nebo vygeneruji vstup pro gnuplot a prostě ho spustím.

    Každopádně v
    chart('set out "out.png')
    ti chybí uvozovka a
    for d in data:
    	chart.plot(d[0],d[1])
    
    dělá přesně, co mu říkáš. Bere postupně prvky z pole data a dává je vždy jako argumenty příkazu plot, tj spouští postupně
    plot 19/06/2012-12:27:49, 0.83
    plot 19/06/2012-12:27:51, 0.00
    ...
    
    Pokud to pole má obsahovat data k vykreslení, tak se musí buď dát do souboru, nebo použít nějakou vychytávku toho modulu, která to udělá za tebe, existuje-li (nevím, neznám, nepoužívám).

    Pokud chceš opravdu pro každý prvek toho pole nakreslit samostatný jednobodový graf, tak by mělo stačit přidet těm hodnotám uvozovky.
    20.6.2012 09:17 Peter S.
    Rozbalit Rozbalit vše Re: python + gnuplot + time na ose x
    Tak som rezignoval na gnuplot, robim to s matplotlib, funguje to, ešte to kozmeticky upravím.

    Keby to niekoho zajímalo tak funguje to takto:

    dates=['2012/06/20 09:09:52', '2012/06/20 09:09:54', '2012/06/20 09:09:56', '2012/06/20 09:09:58', '2012/06/20 09:10:00']
    

    a samotný kod:
    dates2 = [dateutil.parser.parse(s) for s in dates]
    pylab.plot_date(pylab.date2num(dates2), amounts, linestyle='-') 
    pylab.savefig("out.png")
    V každom prípade vďaka zo odpoved...
    rADOn avatar 20.6.2012 13:09 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: python + gnuplot + time na ose x
    Syntaxe pythonu je jasna jako mesic v uplnku :-) Ta chyba neni z pythonu ale z gnuplotu.

    Neni to nahodou tim ze ta cast kterou sezral ("19/06/2012-12") je korektni matematickej vyraz? Tedy ze plot to nevidi jako datum? Nemaji tam byt nejaky uvozovky nebo tak neco?
    "2^24 comments ought to be enough for anyone" -- CmdrTaco

    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.