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 14:22 | Komunita

    Greg Kroah-Hartman začal používat AI asistenta pojmenovaného gkh_clanker_t1000. V commitech se objevuje "Assisted-by: gkh_clanker_t1000". Na social.kernel.org publikoval jeho fotografii. Jedná se o Framework Desktop s AMD Ryzen AI Max a lokální LLM.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | Komunita

    Ubuntu 26.10 bude Stonking Stingray (úžasný rejnok).

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

    Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.3.0. S experimentální podporou FLTK 1.4. S příkazem dilloc pro ovládání prohlížeče z příkazové řádky. Vývoj prohlížeče se přesunul z GitHubu na vlastní doménu dillo-browser.org (Git).

    Ladislav Hagara | Komentářů: 1
    včera 21:55 | Komunita

    Byl publikován přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Vývojáři v přehledu vypíchli vylepšenou instalaci, podporu senzoru okolního světla, úsporu energie, opravy Bluetooth nebo zlepšení audia. Vývoj lze podpořit na Open Collective a GitHub Sponsors.

    Ladislav Hagara | Komentářů: 0
    25.4. 04:00 | Nová verze

    raylib (Wikipedie), tj. multiplatformní open-source knihovna pro vývoj grafických aplikací a her, byla vydána ve verzi 6.0.

    Ladislav Hagara | Komentářů: 0
    24.4. 18:33 | IT novinky

    Nové verze AI modelů. Společnost OpenAI představila GPT‑5.5. Společnost DeepSeek představila DeepSeek V4.

    Ladislav Hagara | Komentářů: 0
    24.4. 15:33 | Zajímavý článek

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 164 (pdf) a Hello World 29 (pdf).

    Ladislav Hagara | Komentářů: 0
    24.4. 04:44 | Komunita

    Bylo oznámeno, že webový prohlížeč Opera GX zaměřený na hráče počítačových her je už také na Flathubu and Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    23.4. 23:11 | IT novinky

    Akcionáři americké mediální společnosti Warner Bros. Discovery dnes schválili převzetí firmy konkurentem Paramount Skydance za zhruba 110 miliard dolarů (téměř 2,3 bilionu Kč). Firmy se na spojení dohodly v únoru. O část společnosti Warner Bros. Discovery dříve usilovala rovněž streamovací platforma Netflix, se svou nabídkou však neuspěla. Transakci ještě budou schvalovat regulační orgány, a to nejen ve Spojených státech, ale také

    … více »
    Ladislav Hagara | Komentářů: 0
    23.4. 22:33 | Nová verze

    Canonical vydal (email, blog, YouTube) Ubuntu 26.04 LTS Resolute Raccoon. Přehled novinek v poznámkách k vydání. Vydány byly také oficiální deriváty Edubuntu, Kubuntu, Lubuntu, Ubuntu Budgie, Ubuntu Cinnamon, Ubuntu Kylin, Ubuntu Studio, Ubuntu Unity a Xubuntu. Jedná se o 11. vydání s dlouhodobou podporou (LTS).

    Ladislav Hagara | Komentářů: 2
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (2%)
     (13%)
     (31%)
     (3%)
     (7%)
     (2%)
     (15%)
     (25%)
    Celkem 1429 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Octave - 11 (kreslíme grafy)

    5. 4. 2006 | Jiří Poláček | Programování | 14880×

    Jak Octave řeší grafický výstup, princip vykreslování čáry a kterak nastavit barvy, styly a legendu.

    Jak Octave řeší grafický výstup

    Octave ve snaze podobat se co nejvíce Matlabu obsahuje také podporu pro grafický výstup (ve smyslu kreslení matematických grafů). Samo o sobě však Octave grafy kreslit neumí - pro tento účel využívá program gnuplot (který je tudíž třeba mít v systému nainstalován). Z jistého úhlu pohledu by se dalo říci, že Octave funguje jako překladač kreslících funkcí z Matlabu do gnuplotu - jedním dechem je však nutno dodat, že se jedná o překladač velmi omezený, který zvládá jenom pár základních příkazů a nastavení. Pro plné využití všech možností gnuplotu máme v Octave k dispozici „nízkoúrovňové funkce“, díky kterým můžeme psát přímo příkazy gnuplotu nad daty z Octave. Následující texty se však budou zabývat především příkazy kompatibilními s Matlabem.

    Jak se kreslí čára

    Základní princip kreslení dvourozměrných grafů spočívá v zadání souřadnic bodů v kartézské soustavě - Octave vždy dva sousední body spojí úsečkou. Souřadnice bodů se zadávají jako dva vektory, jeden pro x-ové souřadnice a druhý pro y-ové; tyto dva (oba řádkové nebo oba sloupcové, ale hlavně stejně dlouhé) vektory pak figurují jako parametry funkce plot, která zajistí již samotné vykreslení grafu.

    Příklad - vytvořme ze čtyř bodů A[0,4], B[5,-2], C[1,-3] a D[3,8] lomenou čáru tak, že bod A bude spojen s bodem B, bod B spojen s bodem C a konečně také bod C spojen s bodem D:

    >> x=[0 5 1 3]; y=[4 -2 -3 8];
    >> plot(x,y)

    Mělo by se nám otevřít grafické okno gnuplotu vypadající podobně jako na následujícím obrázku:

    Grafický terminál gnuplotu s vykreslenou
lomenou čarou

    Vektor x postupně obsahuje x-ové souřadnice zadaných bodů, stejně tak vektor y obsahuje ve stejném pořadí y-ové souřadnice těch stejných bodů. Při vykreslování jsou pak sousední body spojeny úsečkou (tj. vykreslí se mezi nimi rovná čára). Pokud bychom chtěli zajistit, aby byl úsečkou spojen každý bod s každým, musíme to odpovídajícím způsobem zajistit v souřadnicových vektorech:

    >> A=[0 4]; B=[5 -2]; C=[1 -3]; D=[3 8]; body=[A;B;C;D;A;C;B;D];
    >> plot(body(:,1),body(:,2))

    Čtyři body, každý spojen s každým

    V grafu si také můžeme všimnout, že se automaticky nastaví měřítko grafu, vypíší hodnoty na osách a legenda grafu.

    Hned na prvních příkladech tedy vidíme, že výsledné grafy nemusí být těmi správnými grafy z hlediska matematické analýzy, i když právě ty nejspíš budeme chtít ve výsledku vidět. Efektu hladké křivky dosáhneme prostě tím, že spočítáme dostatečný počet souřadnic vykreslovaných bodů. Porovnejte sinusoidu vykreslenou z 11 a 201 bodů:

    >> x10=0:pi/5:2*pi;
    >> plot(x10,sin(x10))
    >> % versus
    >> x200=0:pi/100:2*pi;
    >> plot(x200,sin(x200))

    Sinusoida z 11 bodů

    Sinusoida z 201 bodů

    Uvědomme si u funkce sinus, že se počítá pro každý prvek vektoru x-ových souřadnic, čímž získáváme stejně dlouhý vektor y-ových souřadnic. Abychom si ušetřili čas s vymýšlením formule pro vektor lineárně rozložených x-ových souřadnic, můžeme používat funkci linspace, které zadáme dolní mez, horní mez a počet prvků výsledného vektoru:

    >> linspace(0,10,4)
    ans =
       0.00000   3.33333   6.66667  10.00000

    Více grafů, více barev

    Ve výchozím nastavení každé volání příkazu plot inicializuje výstupní zařízení, tj. smaže případný obsah z předchozích kreslících výstupů. Pokud chceme do grafu „přikreslovat“, nabízí se nám v podstatě dvě možnosti, které můžeme libovolně kombinovat. V prvé řadě můžeme podržet aktuální obsah výstupního zařízení s pomocí funkce hold. Volána s parametrem on tuto vlastnost zapíná, off značí výchozí stav mazání a konečně volání této funkce bez parametru přepíná z jednoho stavu do druhého. V jakém stavu se teď nacházíme, zjistíme funkcí ishold:

    >> plot(x,sin(x))
    >> ishold
    ans = 0
    >> hold on
    >> plot(x,cos(x))
    >> hold off

    Sinus a kosinus v jednom grafu

    Druhou možností je zadání všech grafů do jediného příkazu plot, který může mít variabilní počet parametrů:

    >> plot(x,sin(x),x,cos(x))

    Přesněji řečeno, funkce plot může zpracovat libovolný počet dvojic x-ových a y-ových souřadnic. Navíc za každou touto dvojicí může následovat třetí volitelný řetězcový parametr, který upřesňuje barvu a styl čáry, respektive popisek k ní. Začněme ilustračním příkladem:

    >> plot(0:5,5:-1:0,'^',0:6,6:-1:0,'Lm ',0:8,8:-1:0,'g*;popisek;' , \
    0:.1:9,9:-.1:0,'.3',1:10,9:-1:0,'-@78',2 :10,9:-1:1,'c;usecka;')

    Spousta čar s různými styly a barvami

    Za pomoci čísel, významových znaků a textů mezi středníky tak můžeme u každé vykreslované čáry určit:

    • typ grafu: čárový (výchozí) - -, tečkovaný - ., schodovitý - L, nebo vynášecí - ^
    • barvu určenou buď písmenem nebo číslem: r, g, b, m, c nebo w s příslušnými čísly 1-6, tj. v uvedeném pořadí červená, zelená, modrá, purpurová, azurová a bílá. Pokusy nasvědčují tomu, že i číslům 7-9 nějaké barvy přísluší.
    • bodový graf: buď přímo uvedením symbolu, který se má v daném bodě vykreslit - *, +, o, x, nebo číselně s tím, že v takovém případě je nutno uvést dvojciferné číslo - první cifra určuje barvu a druhá cifra symbol (opět lze experimentovat s čísly 1-9). V případě, že chceme bodový graf, měli bychom uvést, zda body mají - -@ nebo nemají - @ (výchozí předpoklad) být spojeny čarou.
    • popisek: uvádí se mezi středníky, například ;popisek;, středník na konci popisku nesmí chybět. Výchozí popisek zní „line“ plus pořadové číslo.

    Obecně nezáleží na pořadí, v jakém se znaky zapíší, přesto to chce trochu experimentovat a nebýt překvapen, že kupříkladu číselná reprezentace barev může na každém výstupním zařízení znamenat něco jiného.

    Příští povídání o Octave bude s grafy pokračovat, konkrétně se zaměří na měřítko os, popisky ke grafům a speciální dvourozměrné grafy.

    Nejčtenější články posledního měsíce

    Týden na ScienceMag.cz: Modely umělé inteligence založené na fyzice místo na jazyce by se mohly stát hnací silou vědeckých objevů
    Událo se v týdnu 14/2026
    Týden na ITBiz: Trh s externími úložišti rostl solidně

    Nejkomentovanější články posledního měsíce

    Jaderné noviny – přehled za únor 2026
    Týden na ScienceMag.cz: Modely umělé inteligence založené na fyzice místo na jazyce by se mohly stát hnací silou vědeckých objevů
    Událo se v týdnu 14/2026
      všechny statistiky »

    Seriál Octave (dílů: 16)

    Octave - 1 (je to kalkulačka) (první díl)
    <—« Octave - 10 (zbylé řídicí struktury)
    »—> Octave - 12 (měřítko os a speciální grafy)
    Octave - 16 (a co dál?) (poslední díl)

    Související články

    Octave - 1 (je to kalkulačka)
    Octave - 2 (počítání s maticemi)
    Octave - 3 (přístup k jednotlivým položkám matice)
    Octave - 4 (je to pravda?)
    Octave - 5 (práce s řetězci)
    Octave - 6 (práce se soubory)
    Octave - 7 (vlastní skripty a funkce)
    Octave - 8 (větvení programu)
    Octave - 9 (cykly)
    Octave - 10 (zbylé řídicí struktury)
    Octave - 12 (měřítko os a speciální grafy)
    Octave - 13 (dokončení grafiky)
    Octave - 14 (finance a statistika)
    Octave - 15 (špetka matematiky)
    Octave - 16 (a co dál?)
    Vektorový elegán Ipe
    Recenze: Kniha kódů a šifer
    Awk & sed: Příručka pro dávkové zpracování textu
    SETI@home
    Jak se píše procesor
    GnuCash - domácí účetnictví na úrovni
    Použití gnuplot pro tvorbu grafů v PHP
    Hra s písmenky - wxMaxima

    Odkazy a zdroje

    Octave

    Další články z této rubriky

    LLVM a Clang – více než dobrá náhrada za GCC
    Ze 4 s na 0,9 s – programovací jazyk Vala v praxi
    Reverzujeme ovladače pro USB HID zařízení
    Linux: systémové volání splice()
    Programování v jazyce Vala - základní prvky jazyka
           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

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

    Komentáře

    Vložit další komentář

    6.4.2006 07:44 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Octave - 11 (kreslíme grafy)
    Znamená něco příkaz: "% versus", který je v textu v příkladu sinusovek s různou kvalitou?
    Jiří Poláček avatar 6.4.2006 08:25 Jiří Poláček | skóre: 47 | blog: naopak | Sivice
    Rozbalit Rozbalit vše Re: Octave - 11 (kreslíme grafy)
    znak % uvozuje komentář
    Sudoku omrzelo? Zkuste bobblemaze! | Statistiky jsou jak bikiny. Napoví hodně, všechno ale neukážou.
    6.4.2006 07:46 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Octave - 11 (kreslíme grafy)
    Ve Windows verzi mi nefunguje "hold on" :(
    parse error:
    >>> hold on
    ^
    >> hold on
    parse error:
    >>> hold on
    Jiří Poláček avatar 6.4.2006 08:56 Jiří Poláček | skóre: 47 | blog: naopak | Sivice
    Rozbalit Rozbalit vše Re: Octave - 11 (kreslíme grafy)
    Vyzkoušel jsem teď tento příkaz ve windowsových verzích 2.1.36, 2.1.50 a 2.1.73 stažených z octave.sf.net a všude mi příkaz "hold on" bez problémů funguje. Vzhledem k tomu, že za příkazem hold se očekává textový parametr, zkuste hold 'on'.
    Sudoku omrzelo? Zkuste bobblemaze! | Statistiky jsou jak bikiny. Napoví hodně, všechno ale neukážou.
    6.4.2006 09:23 GeBu | skóre: 27 | blog: zápisky
    Rozbalit Rozbalit vše Re: Octave - 11 (kreslíme grafy)
    Ty apostrofy zabraly. Děkuji za obě odpovědi.
    12.4.2006 23:56 asym | skóre: 5 | blog: Psychopat
    Rozbalit Rozbalit vše Re: Octave - 11 (kreslíme grafy)
    V gnuplotu mi jde v pohode mysi rotovat 3D graf. Kdyz je ale volan z octave, tak to nejde. Jak je to mozne?
    Kdo nemá rád linux, ten si ho nezaslouží.
    Jiří Poláček avatar 14.4.2006 08:40 Jiří Poláček | skóre: 47 | blog: naopak | Sivice
    Rozbalit Rozbalit vše Re: Octave - 11 (kreslíme grafy)
    V případě vzdáleného volání gnuplotu z Octave není inicializována myš. Příkaz gset mouse před vyreslením grafu tuto nepříjemnost napraví.
    Sudoku omrzelo? Zkuste bobblemaze! | Statistiky jsou jak bikiny. Napoví hodně, všechno ale neukážou.
    22.4.2006 11:32 asym | skóre: 5 | blog: Psychopat
    Rozbalit Rozbalit vše Re: Octave - 11 (kreslíme grafy)
    nepomaha ani
    __gnuplot_set__ mouse
    Kdo nemá rád linux, ten si ho nezaslouží.

    Založit nové vláknoNahoru

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