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

    Byla vydána nová stabilní verze 24.05 linuxové distribuce NixOS (Wikipedie). Její kódové označení je Uakari. Podrobný přehled novinek v poznámkách k vydání. O balíčky se v NixOS stará správce balíčků Nix.

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

    Byla vydána nová verze 1.48.0 sady nástrojů pro správu síťových připojení NetworkManager. Novinkám se v příspěvku na blogu NetworkManageru věnuje Fernando F. Mancera. Mimo jiné se v nastavení místo mac-address-blacklist nově používá mac-address-denylist.

    Ladislav Hagara | Komentářů: 5
    včera 17:11 | Komunita

    Před 25 lety, 31. května 1999, započal vývoj grafického editoru Krita (Wikipedie). Tenkrát ještě pod názvem KImageShop a později pod názvem Krayon.

    Ladislav Hagara | Komentářů: 2
    včera 12:55 | Nová verze

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 24.05.0 editoru videa Kdenlive (Wikipedie). Ke stažení brzy také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    včera 11:22 | Zajímavý článek

    David Revoy, autor mj. komiksu Pepper&Carrot, se rozepsal o své aktuální grafické pracovní stanici: Debian 12 Bookworm, okenní systém X11, KDE Plasma 5.27, …

    Ladislav Hagara | Komentářů: 5
    30.5. 22:44 | Nová verze

    Wayland (Wikipedie) byl vydán ve verzi 1.23.0. Z novinek lze vypíchnout podporu OpenBSD.

    Ladislav Hagara | Komentářů: 0
    30.5. 21:22 | Zajímavý článek

    Craig Loewen na blogu Microsoftu představil novinky ve Windows Subsystému pro Linux (WSL). Vypíchnout lze GUI aplikaci pro nastavování WSL nebo správu WSL z Dev Home.

    Ladislav Hagara | Komentářů: 0
    30.5. 12:44 | Pozvánky

    V sobotu 1. června lze navštívit Maker Faire Ostrava, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    30.5. 12:22 | Nová verze

    Webový server Caddy (Wikipedie) s celou řadou zajímavých vlastností byl vydán ve verzi 2.8 (𝕏). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 12
    29.5. 22:11 | Nová verze

    Byla vydána verze 3.0 (@, 𝕏) svobodného softwaru HAProxy (The Reliable, High Performance TCP/HTTP Load Balancer; Wikipedie) řešícího vysokou dostupnost, vyvažování zátěže a reverzní proxy. Detailní přehled novinek v příspěvku na blogu společnosti HAProxy Technologies.

    Ladislav Hagara | Komentářů: 7
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (90%)
     (3%)
     (4%)
     (4%)
    Celkem 1063 hlasů
     Komentářů: 17, poslední včera 15:31
    Rozcestník

    Octave - 12 (měřítko os a speciální grafy)

    19. 4. 2006 | Jiří Poláček | Programování | 9288×

    Pokračování článku o grafickém výstupu Octave se zaměřuje na vzhled os a popisuje vybrané speciální dvourozměrné grafy.

    Měřítko os a popisky grafu

    Příkaz plot popisovaný v minulém díle vykresluje grafy s lineárními osami. Funkce loglog, semilogx a semilogy mají stejné vstupní parametry, vykreslené grafy se však liší - jak již názvy napovídají - logaritmickým měřítkem os (buď oběma či pouze tou, která je uvedena v názvu):

    >> x=linspace(0.2, 10, 200);
    >> plot(x, log(x))
    >> loglog(x, log(x))
    >> semilogx(x, log(x))
    >> semilogy(x, log(x))
    
    plot(x, log(x)) loglog(x, log(x)) semilogx(x, log(x)) semilogy(x, log(x))

    Popisky nad grafem, jak jsou vidět na obrázcích, byly (a budou) doplněny funkcí title, například jako:

    title('semilogx(x,log(x))')

    Veškeré další požadavky týkající se os grafů směřují k použití funkce axis. Ta je dalším příkladem funkce s různorodým počtem parametrů. Volána bez jakéhokoliv parametru nastavuje měřítko os automaticky. Jedním z přípustných a zároveň volitelných parametrů může být dvou či čtyřprvkový vektor čísel (pro třírozměrné grafy i šestiprvkový), kde první dvě čísla udávají kraje osy x a druhá dvě čísla kraje osy y:

    >> axis([-1, 10, -0.8, 0.8])
    >> plot(x,sin(x))

    Dalšími parametry funkce mohou být řetězce s následujícími účinky na osy grafu:

    • přizpůsobení grafu velikosti výstupního zařízení (volby se vylučují, tj. pouze poslední uvedená bude platná):
      • 'square' - graf bude čtvercový bez ohledu na velikost výstupního zařízení
      • 'equal' - vzdálenosti na osách budou stejné bez ohledu na velikost výstupního zařízení
      • 'normal' - graf se přizpůsobí velikosti výstupního zařízení
    • zobrazování čárek a hodnot na osách (pokud jsou zakázány čárky, nezobrazí se ani hodnoty):
      • 'on', 'off' - úplně zapne/vypne čárky a hodnoty
      • 'ticx', 'ticy' - zobrazí čárky pro zvolenou osu (a nezobrazí pro nezvolenou)
      • 'labelx', 'labely' - zobrazí hodnoty pro zvolenou osu (a nezobrazí pro nezvolenou)
      • 'nolabel' - schová hodnoty na obou osách
    • pořadí hodnot na ose y:
      • 'xy' - v horní části grafu jsou vyšší hodnoty
      • 'ij' - v horní části gradu jsou nižší hodnoty

    Nuže několik příkladů (příkazy psány ve skriptech):

    axis([-4*pi 4*pi -1.5 2], 'off', 'square');
    x=linspace(-4*pi,4*pi,401);
    plot(x,sin(x),'8;sinus;',x,cos(x),'9;kosinus;',x, sin(x)+cos(x), '0;sinus + kosinus;')
    čtveratý graf bez hodnot na osách
    axis([-2*pi 5 -1.5 1.5], 'equal', 'ticx', 'labelx');
    x=linspace(-2*pi,pi,201);
    plot(x,-sin(x),';- sinus;',x,cos(x),';kosinus;',x, atan(x), ';arkus tangens;')
    rovnocenná měřítka os
    title('graf, kde je reverzní osa y a popisky os');
    axis([-4*pi 4*pi -1.8 1.5], 'normal', 'ij', 'labely');
    grid on; % vodící čáry
    xlabel('toto je popisek osy x');
    ylabel('toto je osa y');
    x=linspace(-4*pi,4*pi,401);
    plot(x, sin(x).*atan(x), '^m;sinus * arkus tangens;')
    graf, kde je reverzní osa y a popisky os

    Poslední příklad také ukazuje, že vodicí čáry v grafu lze zapnout příkazem grid on a popisky jednotlivých os doplnit příkazy xlabel a ylabel.

    Speciální dvourozměrné grafy

    Pro vykreslování některých speciálních typů rovinných grafů můžeme v Octave sáhnout po funkcích na jejich vykreslování zvlášť určených. Jejich kompletní popis je v nápovědě, zde uvedeme pouze stručnější souhrn s příklady. Na vykreslování sloupcových a schodovitých grafů existují funkce bar a stairs:

    hold on
    x=linspace(-2,2,11);
    bar(x, x.^2)
    stairs(x, x.^2+1)
    ukázka sloupcového a schodovitého grafu

    Všimněte si rozdílu, že sloupce jsou zobrazeny „na střed“ z vypočítané x-ové hodnoty, zatímco linie schodu začíná u spočítané hodnoty, jde vodorovně doprava a pokračuje nahoru či dolů k následující spočítané hodnotě - to vysvětluje, proč jsou v zobrazeném grafu schody posunuty kousek doprava oproti sloupcům.

    Ani jedna těchto funkcí neumožňuje zadat třetí volitelný parametr pro definici stylu čáry. Lze však požadovat výsledek funkce jako dvouprvkový vektor souřadnic, které lze předat funkci plot s plnou parádou:

    [barx, bary] = bar(x, x.^2)
    plot(barx, bary, 'm;sloupce;')

    Jiným typem sloupcového grafu je histogram - funkce se jmenuje hist. Algoritmus se snaží hodnoty ze vstupního vektoru (první parametr funkce) rozdělit do několika přihrádek (druhý parametr), výšky sloupečků ve výsledném grafu pak odpovídají počtu prvků v jednotlivých přihrádkách:

    hold on
    axis([0.5 5 0 4.5])
    hist([1 1 2 3 3 3 4], 4)
    hist([1 1 2 3 3 3 4], 2)
    ukázka histogramu

    Čtyři červené sloupečky v grafu odpovídají čtyřem přihrádkám z prvního volání funkce hist, výsledek odpovídá tomu, že na vstupu jsou dvě jedničky, jedna dvojka, tři trojky a jedna čtyřka. V druhém případě dělíme jen do dvou přihrádek, proto zelené sloupečky sčítají jedničky s dvojkami a trojky se čtyřkami.

    Histogram nám může být užitečný, když chceme vidět rozložení náhodných čísel z desetitisícového vzorku; čísla v příkladě sdružíme v pětisetinových intervalech:

    >> hist(rand(1, 10000), 20, 100)
    histogram z náhodných čísel

    Třetí parametr slouží k normalizaci histogramu, jeho hodnota má ve výsledku být součtem hodnot jednotlivých sloupečků grafu. Zde zadaná hodnota 100 nám tedy zajistí, že hodnoty z osy y můžeme číst jako procenta.

    Máme-li vykreslit graf z polárních souřadnic (tj. známe úhel a vzdálenost od počátku), pomůže nám funkce polar:

    hold on
    x=linspace(0,8*pi,361);
    y=linspace(0,2,361);
    polar(x,y, 'b;spirála;')
    polar(x, 2*sin(2*x), ';2 * sinus 2x;')
    ukázka grafu z polárních souřadnic

    Nakonec se zmíníme o grafu s chybovými úsečkami. Základní funkce pro lineární souřadnice se jmenuje errorbar, existují však i další varianty pro logaritmická měřítka souřadnic. Nejjednodušší použití spočívá v poskytnutí třetího vektoru chyb ke každému vykreslovanému bodu - chyba se pak zobrazí jako rozptylová úsečka:

    >> x=linspace(0,2*pi,41);
    >> chyby=rand(1,41)*0.3;
    >> errorbar(x,sin(x),chyby)
    ukázka grafu s chybovými úsečkami

    Chyba může být znázorněna také jako vodorovná úsečka či adekvátně široký sloupeček, v úvahu připadají i různé kombinace - více opět viz webový manuál.

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

    Týden na ITBiz: Kvalita a přesnost dat generovaných AI rozhodne o důvěře zaměstnanců v umělou inteligenci
    Týden na ScienceMag.cz: Působivá simulace pádu do černé díry
    Jaderné noviny – přehled za duben 2024

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

    Týden na ScienceMag.cz: Kosmologové se opět zkouší vypořádat se s problémem Hubbleovy konstanty
    Týden na ITBiz: Platby výkupného za ransomware vzrostly za poslední rok na pětinásobek
    Jaderné noviny – přehled za duben 2024
      všechny statistiky »

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

    Octave - 1 (je to kalkulačka) (první díl)
    <—« Octave - 11 (kreslíme grafy)
    »—> Octave - 13 (dokončení grafiky)
    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 - 11 (kreslíme 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í: 87 %

            š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ář

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