Na crowdsourcingové platformě Crowd Supply byla spuštěna kampaň na podporu open source biometrického monitoru ve tvaru hodinek HealthyPi Move. Cena je 249 dolarů a plánovaný termín dodání listopad letošního roku.
Firma Murena představila /e/OS verze 2.0. Jde o alternativní sestavení Androidu bez aplikací Google. Mezi novinkami je podrobnější nastavení ochrany soukromí před sledováním aplikacemi. Murena prodává několik smartphonů s předinstalovaným /e/OS (Fairphone, repasovaný Google Pixel 5).
Do 30. května lze v rámci akce Warhammer Skulls 2024 získat na Steamu zdarma hru Warhammer 40,000: Gladius - Relics of War.
HelenOS (Wikipedie), tj. svobodný operační systém českého původu založený na architektuře mikrojádra, byl vydán ve verzi 0.14.1. Přehled novinek v poznámkách k vydání. Vypíchnou lze nabídku Start. Videopředstavení na YouTube.
BreadboardOS je firmware pro Raspberry Pi Pico (RP2040) umožňující s tímto MCU komunikovat pomocí řádkového rozhraní (CLI). Využívá FreeRTOS a Microshell.
Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 24.05. Přehled novinek i s náhledy a videi v oficiálním oznámení. Do balíku se dostalo 5 nových aplikací: Audex, Accessibility Inspector, Francis, Kalm a Skladnik.
Byla vydána (𝕏) nová verze 18.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.
V neděli 26. května lze navštívit Maker Faire Rychnov nad Kněžnou, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.
Byla vydána nová stabilní verze 3.20.0, tj. první z nové řady 3.20, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou počáteční podporu 64bitové architektury RISC-V.
Matplotlib je knihovna umožňující kreslit docela pěkné grafy a to přímo z mého oblíbeného Pythonu. Dnes jsem řešil problém s kreslením grafu, kde jedna osa má být časová — s datumy.
Matplotlib v modulu pylab
obsahuje funkci plot_date()
, kterou jsem dříve používal a stačila mi. Tato funkce umí zobrazit ordinální hodnotu data, získanou pomocí date2num()
jako krásné, do řetězce formátované datum.
import pylab as pl import datetime as dt # Připravíme data. dates=[dt.date(2007, 5,10), dt.date(2008,11,13), dt.date(2008,12,11), dt.date(2009,5,19)] means=pl.randn(len(dates)) # Kreslíme. pl.plot_date(pl.date2num(dates), means, "-") # Hold your hats, it is show time! pl.show()Dnes jsem ovšem potřeboval vyrobit
errorbargraf, který má na vodorovné ose data, což asi vylučuje použití
plot_date()
.
Jak už to bývá, řešením je RTFM, ale tentokrát toho na toto téma v TFM nebylo mnoho napsáno. Ovšem stačilo to a vykouzlil následující kód, který snad všecko vysvětlí sám
import matplotlib.dates as md # Příprava dat. variances=pl.randn(len(means)) mean_vars_plot = pl.subplot(1, 1, 1) # Kreslíme. pl.errorbar(pl.date2num(dates), means, variances) # Tady je to kouzlo -- změníme lokátor ticků na ose dl = md.AutoDateLocator() mean_vars_plot.xaxis.set_major_locator(dl) # a změníme formátovač popisků. mean_vars_plot.xaxis.set_major_formatter( md.AutoDateFormatter(dl) ) # Pochlubíme se výsledkem pl.show()
Pokud si ještě trochu pohrajete se zoomem a polohou, výsledný graf může vypadat třeba nějak takhle pěkně:
Nakonec bych rád upozornil, že když jsem měl nastavování xaxis
někde před kreslícími příkazy, dostával jsem záhadné výjimky
ValueError: ordinal must be >= 1
, tak si na to dávejte pozor.
Update: vyměnil jsem graf za nějaký, který lépe ukazuje data i s měsíci, ale taky to, že mám ještě problém s diakritikou. Matplotlib evidentně používá nějaký neobsáhlý font.
Tiskni Sdílej:
ano-taky už jsem to kdysi řešil - je třeba nastavit jiný font.
Ba ne, právě jsem zjistil, že jsem kecal - chyba byla asi v kódování. matplotlib používá, myslím, gtk a to chce zřejmě unicode, kdežto já předával popisky v utf8. Takže použití U"" stringů pomohlo.