Po po téměř roce vývoje od vydání verze 5.38 byla vydána nová stabilní verze 5.40 programovacího jazyka Perl (Wikipedie). Do vývoje se zapojilo 75 vývojářů. Změněno bylo přibližně 160 tisíc řádků v 1 500 souborech. Přehled novinek a změn v podrobném seznamu.
Uroš Popović popisuje, jak si nastavit Linux na desce jako Raspberry Pi Zero, aby je šlo používat jako USB „flešku“.
Andreas Kling oznámil, že jelikož už se nevěnuje nezávislému operačnímu systému SerenityOS, ale výhradně jeho webovému prohlížeči Ladybird, přičemž vyvíjí primárně na Linuxu, SerenityOS opustí a Ladybird bude nově samostatný projekt (nový web, repozitář na GitHubu).
Po dvou měsících vývoje byla vydána nová verze 0.13.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 73 vývojářů. Přehled novinek v poznámkách k vydání.
Na čem aktuálně pracují vývojáři GNOME a KDE? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE.
Před 70 lety, 7. června 1954, ve věku 41 let, zemřel Alan Turing, britský matematik, logik, kryptoanalytik a zakladatel moderní informatiky.
NiceGUI umožňuje používat webový prohlížeč jako frontend pro kód v Pythonu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.6. Z novinek lze vypíchnout lepší integraci LLM (OpenAI, Google AI, Ollama) nebo podporu Matter 1.3.
IKEA ve Spojeném království hledá zaměstnance do své nové pobočky. Do pobočky v počítačové hře Roblox. Nástupní mzda je 13,15 liber na hodinu.
Alyssa Rosenzweig se v příspěvku na svém blogu Vulkan 1.3 na M1 za 1 měsíc rozepsala o novém Vulkan 1.3 ovladači Honeykrisp pro Apple M1 splňujícím specifikaci Khronosu. Vychází z ovladače NVK pro GPU od Nvidie. V plánu je dále rozchodit DXVK a vkd3d-proton a tím pádem Direct3D, aby na Apple M1 s Asahi Linuxem běžely hry pro Microsoft Windows.
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))
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:
'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í'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'xy'
- v horní části grafu jsou vyšší hodnoty'ij'
- v horní části gradu jsou nižší hodnotyNuž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;')
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;')
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;')
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.
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)
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)
Č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)
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;')
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)
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.
Nástroje: Tisk bez diskuse
Tiskni Sdílej: