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:44 | Nová verze

    Byla vydána nová verze 2.56.0 distribuovaného systému správy verzí Git. Přispělo 104 vývojářů, z toho 39 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 21:22 | Bezpečnostní upozornění

    Hackerská skupina ShinyHunters oznámila průnik do informačních systémů FBI, prostřednictvím zero-day zranitelnosti v platformě Oracle PeopleSoft, kterou úřad využívá mimo jiné pro náborový portál FBIJobs.gov. Útočníci tvrdí, že získali až 3 TB dat o současných i bývalých zaměstnancích a uchazečích o práci. Jako důkaz zveřejnili vzorek přibližně 5 000 záznamů obsahující jména, adresy, telefonní čísla, data narození, čísla

    … více »
    AfD 💙 | Komentářů: 1
    včera 21:11 | Zajímavý článek

    Doba kompilace linuxového jádra se díky rychlejšímu hardwaru a optimalizacím kbuildu snižuje k deseti sekundám. Nejnovější patche Lorenza Stoakse (vznikají i s pomocí SI) zkrátily na testovacím stroji dobu sestavení z dlouhých 22 vteřin na pouhých 15, a to bez použití RAMdisku. Testovací systém tvořily dva procesory AMD EPYC 9575F (oba dohromady poskytují celkem 128 jader a 256 vláken), čtyřiadvacet 64GB DDR5-6400 paměťových modulů a

    … více »
    AfD 💙 | Komentářů: 3
    včera 01:33 | Komunita

    Před rokem a půl vývojáři postmarketOS informovali, že pro projekt hledají nové jméno. Včera bylo oznámeno: postmarketOS se nově jmenuje Nura.

    Ladislav Hagara | Komentářů: 5
    27.9. 13:44 | Zajímavý projekt

    Hra Factorio dorazila na Printables. Hned teď si můžete stáhnout 65 různých modelů a nechat celou mimozemskou planetu oživnout na svém stole.

    Ladislav Hagara | Komentářů: 13
    26.9. 19:22 | Nová verze

    GNU Project Debugger aneb GDB byl vydán ve verzi 18.1. Podrobný přehled novinek v souboru NEWS.

    Ladislav Hagara | Komentářů: 0
    25.9. 23:33 | Humor

    Prezident USA Donald Trump během svého projevu na valném shromáždění OSN 22. září 2026 prohlásil, že umělá inteligence 'bude dále oficiálně nazývána superinteligencí', zkráceně SI. Svůj návrh zdůvodnil takto: 'Použití slova artificial činí inteligenci falešnou. Ona falešná není, ve skutečnosti je úžasná'. Zároveň ve svém proslovu prohlásil, že Spojené státy kategoricky odmítají jakékoliv pokusy o vytvoření 'globalistického

    … více »
    AfD 💙 | Komentářů: 26
    25.9. 23:22 | Nová verze

    Čínská technologická firma Xiaomi představila novou verzi 2.6 svého modelu MiMo, váhy modelů MiMo‑V2.6‑Pro‑RL a MiMo‑V2.6‑Flash‑RL jsou dostupné na HuggingFace pod licencí MIT. Výkonnější varianta Pro má přes bilion parametrů, z toho 42 miliard aktivních, úspornější Flash 309 miliard parametrů, z nichž se při generování aktivuje přibližně 15 miliard. Oba modely mají délku kontextového okna milion tokenů. Tyto MoE modely zvládají

    … více »
    AfD 💙 | Komentářů: 0
    25.9. 03:33 | Komunita

    Proběhl Snapdragon Summit 2026. Společnost Qualcomm se mimo jiné pochlubila během Linuxu na čipech Snapdragon X2. Zatím pouze v ranní verzi vhodné pro vývojáře linuxových distribucí a přispěvatele do jádra Linux.

    Ladislav Hagara | Komentářů: 0
    24.9. 21:11 | Nová verze

    Byla vydána nová verze 2.0 klienta F-Droid určeného pro instalaci bezplatných a otevřených mobilních aplikací do Androidu ze softwarového repozitáře F-Droid (Wikipedie). Jedná se o alternativu k Google Play.

    Ladislav Hagara | Komentářů: 7
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (29%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2742 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Octave - 13 (dokončení grafiky)

    26. 4. 2006 | Jiří Poláček | Programování | 8387×

    Třírozměrná grafika, sombrera, plata vajíček a tuning grafů.

    Třírozměrná grafika

    Současné možnosti třírozměrného grafického výstupu v Octave se omezují na jednoduché drátěné modely, které mohou reprezentovat plochu funkce dvou proměnných - pro představu si můžeme vykreslit sombrero známé z matematické analýzy:

    >> sombrero(15)
    
    Ukázka třírozměrného grafu - sombrero

    Pro vykreslování se používá příhodně pojmenovaná funkce mesh. Jejími parametry jsou vektory x-ových a y-ových souřadnic a matice z-ových souřadnic pro všechny průsečíky x-ových a y-ových souřadnic. Pokusme se tuto komplikovanou definici vysvětlit na příkladě - nejdříve si připravme x-ové a y-ové souřadnice:

    >> x=1:3;
    >> y=1:2;
    >> [xx, yy] = meshgrid(x, y)
    xx =
      1  2  3
      1  2  3
    yy =
      1  1  1
      2  2  2
    

    Výstupem funkce meshgrid jsou dvě matice, které dohromady dávají všechny možné průsečíky x-ových a y-ových souřadnic v půdorysu třírozměrného grafu - jeden průsečík je dán prvky ze stejných pozic výsledných matic. Třetí parametr funkce mesh - matice z-ových souřadnic - musí být stejně velká jako tyto výsledné matice, obecně tedy platí, že musí mít tolik řádků, kolik je y-ových souřadnic, a tolik sloupců, kolik prvků obsahuje vektor x-ových souřadnic:

    >> z=[4 2 7; 2 5 9];
    >> mesh(x,y,z)
    
    Jednoduchý síťový graf

    Abychom byli přesní - prvními dvěma parametry funkce mesh mohou být jak souřadnice (průsečíky si funkce dopočítá sama pomocí meshgrid), tak přímo matice průsečíků, které mohou být libovolné, nikoliv jen v přísně ortogonální síti:

    >> a=[1 5 6; 1 3 7]; b=[2 3 1; 6 3 5];
    >> mesh(a,b,z)
    
    Graf s neortogonální soustavou průsečíků

    Pokud nyní vyvstává dotaz, k čemu nám jako uživateli je funkce meshgrid, když ji mesh používá interně, odpoví nám následující příklad:

    x=y=linspace(-2*pi,2*pi,50);
    [xx,yy]=meshgrid(x,y);
    mesh(x,y,sin(xx)+cos(yy))
    
    Plato na vajíčka

    V případě tohoto plata na vajíčka je matice z dána funkčním předpisem, kde jako proměnné figurují průsečíky.

    Více grafů v jednom okně

    Octave podporuje (za předpokladu podpory i ze strany gnuplotu) vykreslování více grafů v jednom okně - nejedná se o nic jiného, než o umístění grafů do matice stanovené velikosti. Funkce multiplot režim vykreslování více grafů do jednoho okna zapíná, jejími parametry jsou počty grafů, které mají být pod sebou a vedle sebe. Funkce mplot pak vykresluje grafy stejným způsobem jako plot s tím rozdílem, že automaticky mění pozici v okně, kam se má graf vykreslit:

    x=linspace(-pi, pi, 200);
    multiplot(2,2);
    mplot(x, sin(x), 'b;sinus x;');
    mplot(x, atan(x), '7;arkus tangens x;');
    mplot(x, log(x), '9;log x;');
    mplot(x, cos(x), 'g;kosinus x;');
    
    Více grafů v jednom okně

    Přesnou pozici, kam se má v okně vykreslit další graf, lze zadat funkcí subwindow, parametry jsou řádkový a sloupcový index počítaný z levého horního rohu - do okna tak můžeme vykreslit i grafy, které nelze vykreslit příkazem plot (například histogram či třírozměrný graf). Funkce subplot je kombinací funkcí multiplot a subwindow - má tři parametry, z nichž první dva udávají počet grafů v okně a třetí pak pozici - zde se počítá zleva doprava a pak shora dolů.

    Pro doplnění zmiňme funkci figure - pokud grafy vykreslujeme v terminálu x11 (což je výchozí nastavení, viz dále), můžeme pracovat s více okny, jejichž číslo se udává jako parametr této funkce, tj. například první volání figure(10) otevře nové okno s číslem 10 a učiní jej aktivním; pokud po té vytvoříme (a tudíž aktivujeme) jiná okna, tak další volání figure(10) opět zaktivní okno s číslem 10.

    Tuning grafů s gnuplotem

    Jak již bylo řečeno dříve, grafický výstup v Octave obstarává program gnuplot, což v závislosti na různých verzích programů a kompilačních parametrech s sebou nese různá úskalí. Pro bližší seznámení s gnuplotem můžeme na tomto místě odkázat na obsáhlou nápovědu či seriál článků v češtině, zde zmíníme jen pár užitečných rad.

    Řada příkazů gnuplotu je v Octave přímo přístupných se stejnou syntaxí a jménem pozměněným tím způsobem, že na začátek je přidáno písmeno „g“, například gplot či gsplot pro kreslení dvou a třírozměrných grafů. Tyto příkazy jsou klasifikovány jako nízkoúrovňové, nicméně pro pořádné využití grafického výstupu v Octave se bez nich neobejdeme.

    Prakticky všechny vlastnosti grafického výstupu lze nastavit s pomocí příkazu gset následovaného popisem, co se vlastně má nastavit - například gset mouse zajistí, že výchozí výstupní terminál x11 (tj. ono jednoduché grafické okno pro vykreslovaní grafů) bude interaktivní, s grafem pak lze dělat předepsané úkony pomocí klávesových zkratek (kupříkladu zobrazení vodících čar; klávesa „h“ vyvolá nápovědu), třírozměrné grafy lze otáčet s pomocí myši atd.

    Výstupních terminálů je podporována celá řada, může jím být (na základě dostupnosti ovladačů v systému) i tiskárna či plotter, obrázek (různé vektorové i bitmapové formáty), postskript, PDF, LaTeX atd. Ke změně terminálu se používá dvojice příkazů gset terminal a gset output - obrázky doplňující tento text byly generovány do formátu PNG následující dvojicí příkazů:

    gset terminal png size 360,270;
    gset output 'grafXYZ.png';
    

    Pozor - v současné době je možné se setkat s instalacemi gnuplotu, které jsou linkovány buď s knihovnou libpng (starý způsob, méně funkcí) nebo s knihovnou gd (nový způsob, více možností nastavení). Druhý způsob umožňuje zejména pracovat s libovolným fontem české znaky nevyjímaje:

    gset terminal png font "/usr/X11/lib/X11/fonts/luxirr.ttf" 16;
    
    Graf s vlastním fontem

    V případech, kdy chceme mít v grafu více výstupů z kreslících příkazů, může generování do nějakého souboru zlobit - osvědčuje se nachystat si výslednou podobu grafu v terminálu x11 a po té graf sekvencí příkazů gset output, gset terminal a replot zkopírovat do požadovaného souboru.

    V grafu z příkladu si také povšimněte desetinné čárky - ačkoliv jsme v Octave nuceni používat desetinnou tečku, naše grafy lze přizpůsobit národním tradicím jednoduchým nastavením:

    >> gset decimalsign ',';
    

    Pro třírozměrné grafy je nepostradatelný příkaz gset view, který nastavuje úhel pohledu na vykreslovaný graf. Jeho čtyři parametry nastavují otočení okolo osy x (0-180°), otočení okolo osy z (0-360°), měřítko celého grafu a měřítko pouze osy z. Výchozími hodnotami pro měřítko jsou čísla 1, které lze chápat jako 100% velikost. Pár pohledů:

    >> gset view
    >> gshow view
            view is 60 rot_x, 30 rot_z, 1 scale, 1 scale_z
    >> gset view 30, 340, 1.2, 1.3
    >> gset view 20, 0, 1.1, 0.8
    
    Výchozí úhel pohledu Jiný úhel pohledu Ještě jiný úhel pohledu

    Příkaz gset view bez parametrů nastavuje výchozí úhel pohledu, gshow prozradí, jak je aktuálně vybraný parametr nastaven. Speciálním pohledem je mapa - gset view map - která zapříčiní projekci grafu do půdorysu, tj. pohled shora - viz příklad u třírozměrné grafiky.

    Poznámka na konec - poslední verze Octave označují nízkoúrovňové příkazy gnuplotu jako zastaralé a varují před jejich používáním. Varování se lze vyhnout používáním interních názvů těchto příkazů ve formě __gnuplot_plot__ či __gnuplot_set__ (podtržítka jsou součástí příkazu).

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

    Týden na ITBiz: Nová technologie kapalinového chlazení čipů je 10krát účinnější než dosavadní rekord
    Týden na ITBiz: Kdo a jak bude hlídat, že české firmy dodržují Akt o kybernetické odolnosti? A jak se nařízení staví k open source
    Týden na ITBiz: Bez lidí zůstane polovodičová strategie na papíře

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

    Jaderné noviny – přehled za srpen 2026
      všechny statistiky »

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

    Octave - 1 (je to kalkulačka) (první díl)
    <—« Octave - 12 (měřítko os a speciální grafy)
    »—> Octave - 14 (finance a statistika)
    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 - 12 (měřítko os a speciální grafy)
    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ář

    18.5.2006 20:52 asym | skóre: 5 | blog: Psychopat
    Rozbalit Rozbalit vše Re: Octave - 13 (dokončení grafiky)
    me to gset mouse proste nepomaha, porad nemohu tocit 3d grafem
    Kdo nemá rád linux, ten si ho nezaslouží.
    1.6.2006 18:56 miro | skóre: 19 | blog: miro
    Rozbalit Rozbalit vše Problem s nastavenim vystupu
    Zdravim,

    skusam graficky vystup do png, ale po zadani
    gset terminal png
    dostanem chybovu hlasku
    octave:1> gset terminal png parse error:
    
      syntax error
    
    >>> gset terminal png
                     ^
    
    Gnuplot mam nainstalovany, prikaz
    set terminal png
    v nom funguje. Pouzivam Octave 2.9.5, Gnuplot 4.0

    Nestretli ste sa nahodou niekto s podobnym problemom? Dakujem za pomoc.
    21.6.2006 10:26 miro | skóre: 19 | blog: miro
    Rozbalit Rozbalit vše Re: Problem s nastavenim vystupu
    __gnuplot_set__
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.