Metodika · v1.0

Jak počítáme mykoindex

Mykoindex chce být transparentní. Tato stránka popisuje, odkud pocházejí data, jak se skóre počítá, co index říká a hlavně to, co neříká.

Co je Mykoindex

Mykoindex je jedno transparentní číslo 0–100 pro každou lokalitu, které agreguje meteorologické podmínky relevantní pro růst hub. Výsledek není určení druhu ani mapa nálezů, ale pragmatický signál „stojí to za výlet?“.

Index pracuje s denními srážkami naměřenými stanicemi ČHMÚ. Vstupuje do něj srážkový úhrn za období před 9 až 33 dny (všech 25 dní okna váží stejně), roční doba a pojistka proti mrazu. Složky se skládají násobením, takže stačí, aby jediná klesla k nule, a klesne celé skóre. Prakticky to znamená, že ani po vydatném dešti nevyskočí index nahoru mimo sezónu.

Teplota v modelu není. Měřili jsme ji jako vstup a předpověď zhoršovala, takže z něj vypadla; zůstala jen pojistka po silném mrazu, a ta není prediktor.

Datové zdroje

  • Denní agregáty srážek (SRA), teplot (TMA/TMI/TAVG), vlhkosti vzduchu (H). Klimatologické a srážkoměrné stanice. Aktualizace denně přes cron.

  • Denní srážkové úhrny (SRA) ze staniční sítě. Okno modelu končí 9 dní zpátky, takže se z nich sedmidenní pruh na detailu lokality spočítá bez jediného dne předpovědi počasí.

  • 30letý klimatologický průměr z denních měření ČHMÚ stanic (1996–2025).

  • Přispěvatelé OSM. Hranice CHKO, NP a lokalit a značky využití krajiny. Použito pro mapovou vrstvu (/mapa).

  • © AOPK ČR. Hranice Krušných hor: geomorfologický celek Krušné hory (IIIA-2). CHKO Krušné hory zatím vyhlášená není, takže OSM pro ně žádnou hranici nemá.

Časová osa a spolehlivost předpovědi

Mykoindex skládá data z více horizontů, každý má jinou spolehlivost. Uživatelské rozhraní odráží tuto nejistotu skrze štítky spolehlivosti (kliknutím rozbalíš vysvětlení).

HorizontZdroj datSpolehlivostStav
VčeraČHMÚ stanice> 95 %Aktivní
DnesČHMÚ stanice> 95 %Aktivní
1–7 dníČHMÚ stanice, okno 9 až 33 dní zpětBez předpovědi počasíAktivní
8–9 dníČHMÚ stanice, okraj oknaBez předpovědi počasíAktivní
10–30 dníPředpověď srážekNízkáSprint 4
12 měsícůČHMÚ 30y staničníKlimatologický průměrAktivní (ČHMÚ 30 let, heuristika jako záloha)
Meziročně (vs. loni)mykoindex_historyZávisí na horizontuAktivní (data se nastřádají)

Prostorová granularita

Předpověď běží ve dvou vrstvách zároveň. Lokality jsou pojmenovaná místa velikosti CHKO nebo pohoří; každé má nejbližší stanici ČHMÚ a vlastní stránku. Mřížka pokrývá republiku pravidelnými buňkami a kreslí barevnou mapu, takže odpověď dostaneš i tam, kde žádná pojmenovaná lokalita není.

Jemnější vrstva než mřížka existuje jen jako terénní zjemnění na ~2 km (popsané níž), které dopočítává svah a porost, ale nepřidává žádné nové měření. Vrstva ze skutečných pozemních senzorů postavená není a nemáme pro ni data.

Mykoindex neslibuje hyperlokální mapu nálezů: taková by byla nepřípustná z důvodů ochrany lokalit i spolehlivosti dat.

Prostorové rozlišení: mapa po čtvercích

VrstvaRozlišeníStav
Per-CHKO bodyOblast (~50–100 km)Aktivní
Mapa po čtvercích (ERA5-Land)7,2 km × 11,1 km (1 105 buněk, 0,1°)Aktivní
Hyperlocal100 m (pozemní senzory)Výhled

Mapa zobrazuje gradient mikroklimatu, NE mapu nálezů. Buňka 7,2 km × 11,1 km rozliší „údolí versus hřebeny na Šumavě“, NE konkrétní paseku.

Zjemnění na 2 km (vrstva Pro)

Jedna buňka mřížky pokrývá 7,2 km × 11,1 km. Les ve 200m údolí a hřeben v 700 m tak sdílejí jedno číslo, i když se liší: jižní svah vysychá rychleji a jehličnatý les udrží víc vlhkosti než holá paseka.

Detailní mikroklimatická mapa (rozlišení ~2 km) kombinuje:

  • skóre buňky mřížky jako základ (počítá se ze srážek, viz vzorec)
  • EU-DEM 25m (downsampled na 100m) → orientace svahu pro každé ~2km dílčí pole
  • OpenStreetMap landuse → převažující typ porostu (jehličnatý / listnatý / smíšený les / paseka / louka)

Typ porostu má zatím jen mapa jednotlivých oblastí. Celorepubliková mřížka, kterou vidíš na /mapa, má u všech buněk zapsaný smíšený les, takže se v ní zjemnění opírá pouze o orientaci svahu. Doplnění porostu i pro celou republiku je rozdělané.

Dvě korekce per sub-pixel, obě se k základu přičítají:

// Orientace svahu (jen sezona duben~říjen)

aspect_factor = 0,975 + 0,125 × cos(aspect_rad)

→ severní svah 1,10, bok 0,97, jižní svah 0,85

// Typ porostu, zádrž vlhkosti

jehličnatý 1,20 | smíšený 1,15 | listnatý 1,05 | paseka 0,60 | louka 0,55 | zástavba a voda 0,00

score_sub = base + aspect_delta + landcover_delta

Severní svah dostává přirážku, protože déle drží vlhkost. Zástavba a vodní plochy mají faktor nula, tedy se z mapy vyřazují úplně.

Tohle je odhad, ne měření. Korekce na orientaci svahu a typ porostu vycházejí z recenzované literatury o zjemňování rozlišení (Daly 2008, WRF), ale samotné zjemnění jsme proti nálezům neověřovali. Validace modelu je celostátní a o rozdílech uvnitř jedné oblasti neříká nic, takže vrstvu ber jako orientační pomůcku při výběru svahu nebo údolí, ne jako mapu nálezů. Plně transparentně v /etika.

Známé limity v1.0

Zdroj typu porostu: Aktuálně značky využití krajiny z OpenStreetMap. Pokrytí je v ČR nerovnoměrné: některé oblasti (Šumava, Krkonoše) mají hustou anotaci, jiné (Brdy, které byly do 2016 vojenskou zónou) jsou OSM-řidčeji popsané. Pro nemapované sub-pixely defaultujeme na smíšený les (statisticky nejčastější český biotop mimo zástavbu a pole). Zvažujeme přechod na CORINE 2018 raster (100 m, plné pokrytí EU).

Zhrubení výškového modelu: 25m EU-DEM agregujeme na ~2km grid přes prosté střední hodnoty. Hřebeny užší než 500m (úzké soutěsky, hřebeny pod hraničním rozlišením) se mohou rozmazat.

Odhad orientace svahu: počítán ze 4 sousedních bodů (500m). Komplexní terén (hřbety s dvojitým svahem) se redukuje na jednu dominantní expozici.

Jak se mykoindex počítá

Model spojuje tři věci: kolik napršelo v období před 9 až 33 dny, jaká je roční doba a jestli nedávno nemrzlo. Z toho vyjde jedno číslo od 0 do 100.

Srážky vstupují přes křivku, ne přes práh: mezi „sucho“ a „mokro“ není hrana, ale plynulý přechod. Všech 25 dní okna přitom váží stejně, žádný útlum starších dnů. Tvar té křivky jsme vyladili proti měřeným datům, ne odhadem od stolu, a přesně proto ho nezveřejňujeme do detailu.

Co zveřejňujeme, je ověření: kalibrace běžela na 110 srážkoměrných stanicích ČHMÚ rozmístěných po celé republice, na zhruba 70 000 staničních dnech ze sezón srpen až říjen let 2019 až 2025. Model se testoval na letech, které při ladění neviděl. Kdyby čísla seděla jen na datech, ze kterých vznikla, nebyla by to kalibrace, ale opsaná odpověď.

Nejdůležitější vlastnost modelu je odstup: okno srážek končí 9 dní zpátky, protože tak dlouho trvá, než po srážce narostou plodnice. Když dnes leje, index se nezvedne dnes. Vedlejší efekt je robustnost: výhled na týden dopředu nepotřebuje ani jeden den předpovědi počasí.

Limity a co Mykoindex NEDĚLÁ

  • Nepředpovídá konkrétní druhy, jen celkové podmínky.
  • Není mapa nálezů, lokace výskytů nezveřejňujeme.
  • Rozdíly mezi místy na mapě jsou rozdíly v POČASÍ, ne v tom, kde hub roste víc. Zkoušeli jsme, jestli se z prostorové složky indexu dá předpovědět, kde bude víc nálezů: na letech, které model neviděl, vysvětlí 0,5 % rozdílů mezi místy. Zůstává proto jako údaj o podmínkách, ne jako doporučení kam jet.
  • Kam jet, odpovídá vedle toho měřená vrstva z historie hlášení (podíl hub na pozorováních přírody v okruhu 20 km, 2019–2025). Ta na držených letech vysvětlí 21 % rozdílů mezi oblastmi, ale nepočítá se z počasí a nemění se ze dne na den. Obě čísla jde přepočítat skriptem `npm run model:kde`.
  • Vrstvy z hlášení jsou geografie POZOROVÁNÍ, ne výskytu. Ukazují, kde lidé houby fotí; v chráněných územích chodí do přírody i lidé, kteří houby nesbírají. Proto se všude počítají podíly, ne počty. Surové počty měří návštěvnost tak silně, že seřazení podle nich je horší než náhoda.
  • Neupravuje za klimatický posun (zatím). Sezónnost druhů je spočítaná z let 2019–2025 a nepřepočítává se.
  • Bez půdního pH, mykorhizálních dat ani historické mapování.
  • Sucho model netrestá zvlášť. Nahrazuje to tím, že okno srážek nevidí posledních 9 dní, takže čerstvé sucho se do čísla promítne samo, jen se zpožděním.
  • Klimatologie vychází z 30letého průměru denních měření stanic ČHMÚ (1996–2025); lokality bez dostatečné staniční řady používají náhradní heuristiku.

Editorská pozice

Mykoindex je citovaný agregátor, ne autoritativní příručka. Dáváme naše výpočty najevo: zdrojový kód vzorce je veřejný, datové zdroje jsou citované s licencí.

Před konzumací hub vždy ověř druhové určení s mykologem nebo prostřednictvím Toxikologického informačního střediska. Mykoindex nenahrazuje odborné posouzení.

Klimatologický průměr z 30letých staničních dat ČHMÚ

Sekce Klimatologický průměr na detailu lokality a v Houbařském kalendáři vychází z 30letých denních měření ČHMÚ stanic (1996–2025):

  • Pro každou lokalitu vybrána nejbližší ČHMÚ stanice vážená vzdáleností i rozdílem nadmořské výšky (haversine + výšková penalizace).
  • Vyžadováno ≥ 20 let denních dat srážek (SRA) i průměrné teploty (T) v období 1996–2025; jinak heuristický fallback.
  • Teplota korigovaná na rozdíl nadmořské výšky stanice a lokality (lapse rate −6,5 °C / 1000 m). Měřené srážky bez korekce. Staničně měřená data jsou přesnější než orografický odhad.
  • Mykoindex počítán pro každý den z klouzavého okna a agregován na měsíc jako typický index — průměrné skóre v tom měsíci za roky 1996 až 2025, na téže stupnici 0 až 100, jakou ukazuje stránka lokality. Pásmo se odvozuje z něj (zjednodušení: bimodální měsíc může mít pásmo neodpovídající většině dní).

Lokality bez dostatečné staniční řady (méně než 20 pokrytých let) používají heuristický fallback a jsou označeny confidence_tier = 'heuristic'.

Meziroční rozpětí (P10–P90): u lokalit s reálnými ČHMÚ daty ukazujeme i to, jak spolehlivý je daný měsíc rok od roku: medián a pásmo 10.–90. percentil přes 30 let. Velké rozpětí = riziko (někdy špička, někdy nic). Heuristické lokality rozpětí nemají (nefabrikujeme rozptyl z odhadu).

Vývoj rok po roce: na detailu ČHMÚ lokality (21/28 míst) novou sekcí ukazujeme celých 30 let dat: heatmapa měsíc × rok s rovnoběžnou linkou ročního průměru. Označen nejlepší a nejhorší rok. Ztlumené buňky = méně než 20 dní v měsíci s vypočteným skórem (slabší pokrytí).

Co se změnilo

Když opravíme způsob výpočtu, čísla na webu se změní. Aby bylo poznat, že se nezměnila skutečnost, ale výpočet, píšeme sem každou takovou opravu i se starou hodnotou. Nejnovější nahoře.

  1. Mykoindex počítá z okna, které vynechává poslední dny

    Index se dosud počítal ze srážek za posledních 14 a 30 dní s tím, že čerstvý déšť váží nejvíc, a k tomu z teploty, délky sucha a nadmořské výšky. Nově se počítá z naměřených srážek ČHMÚ v okně 9 až 33 dní zpátky, ze sezónnosti a z mrazové pojistky. Teplota, penalizace za sucho ani nadmořská výška v modelu nejsou.

    Plodnice vyrážejí se zpožděním, takže déšť z posledních dnů o dnešku nic neříká. Na sedmi sezónách (iNaturalist ČR 2019 až 2025, ověřováno na letech, které model neviděl) dával starý model schopnost předpovědi −0,09, tedy horší než kdyby web pořád ukazoval průměr; nový dává +0,29. Teplotu model vypustil proto, že měřeně předpověď zhoršovala. Vedlejší výhra: sedmidenní výhled teď nepotřebuje ani jeden den předpovědi počasí, protože všechno, z čeho se počítá, už spadlo a je naměřené.

    Dvacet jedna oblastí ze třiceti změnilo pásmo, devatenáct z nich nahoru. Blanský les 17 na 55, Krkonoše 51 na 77, Krušné hory 25 na 51, Broumovsko naopak 81 na 56. Posunuly se i hranice pásem, protože nový model má jiné rozdělení skóre: „jeď“ začíná na 65 místo 80, „dá se“ na 45 místo 55. Hranice nejsou odhad, měří se proti hlášením nálezů: v pásmu „jeď“ chodí 1,39krát víc hlášení, než je pro daný týden v roce obvyklé, v pásmu „nemá smysl“ 0,68krát. U starého modelu to bylo 1,15 a 0,95, tedy skoro žádný rozdíl.

  2. Klimatologie ukazuje typický index místo podílu příznivých dní

    Přehledy po měsících (kalendář, stránky lokalit i datová studie) dosud publikovaly, kolik procent dní v měsíci překonalo hranici dobrého dne. Nově publikují typický index, tedy průměrné denní skóre měsíce na stupnici 0 až 100.

    Jakmile je sezónnost součástí samotného skóre, umí stará metrika vyjít nulou i za měsíc s dobrým počasím, protože se skóre přes hranici prostě nedostane. Web by pak tvrdil, že v červnu nebývá ani jeden den, kdy by to stálo za výpravu, což není pravda. Typický index je navíc táž stupnice, jakou web ukazuje pro dnešek, takže „v září tu bývá kolem 46, dnes je 52“ dává okamžitý smysl. Zmizela tím i hranice 60, která nikdy neodpovídala žádnému pásmu.

    Celostátní křivka po měsících se mění z podílu dní na body indexu: červen z 30,1 % na 18, červenec z 37,6 % na 31, srpen z 32,8 % na 45, září z 13,3 % na 46, říjen z 0,5 % na 29. Vrchol roku se tím posouvá z července na přelom srpna a září. Zmizel i blok „proč má říjen nulu“: ta nula byla důsledkem hranice, ne počasí.

  3. Letošní rok se měří na stejných stanicích jako archiv

    Třicetiletý archiv vybírá pro každou lokalitu stanici podle vzdálenosti a rozdílu nadmořské výšky, letošní rok bral nejbližší stanici, která zrovna hlásí. Pro 28 ze 44 lokalit to byla jiná stanice, u Krušných hor archiv v 725 metrech a letošek ve 240. Srážky se na nadmořskou výšku nepřepočítávají, takže se letošek srovnával s archivem měřeným jinde.

    Volba stanice teď žije v jednom souboru, ze kterého čte archiv i letošní rok. Zároveň se doplnila chybějící měření: od 1. června do 12. července 2026 hlásilo srážky jen 16 stanic z celé republiky. Hlídač to nepoznal, protože sledoval jen stáří dat, a ta chodila každý den. Nově sleduje i to, kolik stanic hlásí.

    Červen 2026 se posunul z 26,9 % na 35,0 %, červenec z 0,0 % na 23,5 %, srpen ze 7,5 % na 16,5 %. Za červen a červenec dohromady je to 29 % místo 16 %. Léto 2026 tím přestalo být nejslabší za celou řadu a je deváté nejslabší z let 1996 až 2026.

  4. Dlouhodobý průměr se počítá z let 1996 až 2025

    Číslo, kterému říkáme dlouhodobý průměr, se dřív počítalo ze všech let, které má stanice ČHMÚ v archivu. Některé stanice měří od roku 1886, takže do „třicetiletého průměru“ vstupovala i devatenáctá století.

    Web na několika místech sliboval okno 1996 až 2025 a počítal něco jiného. Klimatologický normál se navíc standardně počítá z pevného třicetiletého okna, ne z celé historie stanice.

    Průměr za červenec se posunul z 37,6 % na 45,0 % dobrých dní, za srpen z 32,8 % na 37,0 % a za červen z 30,1 % na 34,0 %. Starší roky měřené jinými přístroji index tlačily dolů.

  5. Popis modelu odpovídá tomu, co se opravdu počítá

    Na sedmi místech, včetně popisu webu pro vyhledávače, stál popis připravovaného modelu: „srážky naměřené na 520 stanicích ČHMÚ za období před 9 až 33 dny“. Ten model zatím běží jen ve zkušebním náhledu.

    Živý index počítá z předpovědi počasí: srážky za posledních 14 a 30 dní, průměrná teplota za týden, počet dní od posledního deště a korekce na nadmořskou výšku.

  6. Index nezohledňuje typ lesa

    Několik textů uvádělo, že do indexu vstupuje i porost. Nevstupuje: jeho váha je pevně 1,00, tedy žádná.

    Data o porostu v potřebné podrobnosti nemáme a odhad by číslu dodal přesnost, kterou nemá.

  7. Průměr za Česko doplňuje rozptyl

    U celorepublikového indexu je nově vidět, jak daleko jsou od sebe jednotlivé oblasti a kolika z nich vychází dobré podmínky.

    Index je součin nelineárních křivek, takže průměr přes oblasti nejde složit z průměrných srážek a teplot. Když je Česko rozpůlené, průměr neplatí nikde.

  8. Čas se zobrazuje v české zóně

    Data a časy se formátují v zóně Europe/Prague na serveru i v prohlížeči.

    Server běží v UTC, takže vykreslený čas byl o dvě hodiny pozadu a po načtení stránky se přepsal. Kdo viděl stránku bez skriptů nebo z vyhledávače, dostal špatný čas.

    Údaj „Aktualizováno“ byl na titulce posunutý o dvě hodiny, datum v patičce kolem půlnoci o celý den.

Atribuce zdrojů dat