Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| courses:b4m39viz [2026/05/25 16:56] – zapleka3 | courses:b4m39viz [2026/05/27 13:14] (current) – [Question 2: Odlehlé hodnoty (Outliers) – Co to je, co znamenají a k čemu slouží] zapleka3 | ||
|---|---|---|---|
| Line 3: | Line 3: | ||
| [[https:// | [[https:// | ||
| + | [[https:// | ||
| ======= Question set 1 ======= | ======= Question set 1 ======= | ||
| Line 158: | Line 159: | ||
| Sugiyamův rámec (Sugiyama Framework) je široce používaný algoritmus, který řeší problém, jak prostorově uspořádat uzly u relačních dat. | Sugiyamův rámec (Sugiyama Framework) je široce používaný algoritmus, který řeší problém, jak prostorově uspořádat uzly u relačních dat. | ||
| - | - Je určený specificky | + | - Je primárně navržený pro výpočet **hierarchického rozvržení stromů** nebo **orientovaných acyklických grafů (DAG)**. Lze jej však aplikovat i na **obecné orientované grafy (s cykly)**, se kterými si poradí dočasným otočením problémových hran. |
| - | - Je naprosto ideální pro úlohy, kde potřebujeme jasně komunikovat **hierarchii, | + | - Je naprosto ideální pro úlohy, kde potřebujeme jasně komunikovat **hierarchii, |
| - %%Příklad využití: | - %%Příklad využití: | ||
| ++++ | ++++ | ||
| Line 167: | Line 168: | ||
| - **Horizontální vrstvy:** Všechny uzly grafu jsou úhledně seřazeny do zřetelných horizontálních vrstev (úrovní). | - **Horizontální vrstvy:** Všechny uzly grafu jsou úhledně seřazeny do zřetelných horizontálních vrstev (úrovní). | ||
| - | - **Jednosměrnost hran:** Zásadním rysem je, že **všechny hrany směřují pouze jedním směrem** (typicky shora dolů). | + | - **Převážná jednosměrnost hran:** Zásadním rysem je, že **naprostá |
| - | - **Jasná hierarchie: | + | - **Jasná hierarchie: |
| ++++ | ++++ | ||
| Line 237: | Line 238: | ||
| - **Dynamické mapování (Čas $\rightarrow$ Čas / Animace):** Fyzický čas přehrávání vizualizace odpovídá času v datech. | - **Dynamické mapování (Čas $\rightarrow$ Čas / Animace):** Fyzický čas přehrávání vizualizace odpovídá času v datech. | ||
| - | * *Výhoda:* Přirozené (žádná mentální konverze), dobré pro sledování vývoje 2D/3D polí (%%např.%% šíření bouře). | + | |
| - | * *Nevýhoda: | + | |
| - **Statické mapování (Čas $\rightarrow$ Prostor):** Čas je namapován na osu nebo vizuální kanál. | - **Statické mapování (Čas $\rightarrow$ Prostor):** Čas je namapován na osu nebo vizuální kanál. | ||
| - | * *Výhoda:* Umožňuje **přímé vizuální srovnání** hodnot napříč historií. | + | |
| * **Vizuální kanály pro kódování času:** | * **Vizuální kanály pro kódování času:** | ||
| * **Pozice:** Nejčastější a nejpřesnější (osa X). | * **Pozice:** Nejčastější a nejpřesnější (osa X). | ||
| Line 376: | Line 377: | ||
| **Přímé objemové renderování** je pokročilá vizualizační technika pro zobrazení 3D objemových dat (např. CT nebo MRI skenů). | **Přímé objemové renderování** je pokročilá vizualizační technika pro zobrazení 3D objemových dat (např. CT nebo MRI skenů). | ||
| - | - **Základní princip:** Na rozdíl od *nepřímé vizualizace* (která z dat nejprve vytvoří 3D geometrii, např. síť trojúhelníků pomocí Marching Cubes), DVR **neextrahují žádnou mezilehlou geometrickou reprezentaci**. Zobrazuje 3D data přímo a mapuje vlastnosti objemu na pixely obrazovky. | + | - **Základní princip:** Na rozdíl od **nepřímé vizualizace** (která z dat nejprve vytvoří 3D geometrii, např. síť trojúhelníků pomocí Marching Cubes), DVR **neextrahují žádnou mezilehlou geometrickou reprezentaci**. Zobrazuje 3D data přímo a mapuje vlastnosti objemu na pixely obrazovky. |
| - **Ray Marching (Paprskový pochod):** Základní algoritmus DVR. Pro každý pixel 2D obrazovky (kamery) se do 3D objemu vyšle světelný paprsek. Algoritmus po malých krocích " | - **Ray Marching (Paprskový pochod):** Základní algoritmus DVR. Pro každý pixel 2D obrazovky (kamery) se do 3D objemu vyšle světelný paprsek. Algoritmus po malých krocích " | ||
| - **Vyhodnocení paprsku:** Nasbírané vzorky podél paprsku se musí " | - **Vyhodnocení paprsku:** Nasbírané vzorky podél paprsku se musí " | ||
| Line 496: | Line 497: | ||
| * Je to často **intuitivnější**, | * Je to často **intuitivnější**, | ||
| * Z hlediska výpočtu potřebujeme řešit **pouze jednu rovnici** pro každý vzorek (počítá se pouze kumulace intenzity). | * Z hlediska výpočtu potřebujeme řešit **pouze jednu rovnici** pro každý vzorek (počítá se pouze kumulace intenzity). | ||
| + | - **Nevýhody: | ||
| + | * Zbytečné výpočty pokud existuje neprůhledný objekt blíž ke kameře. | ||
| ++++ | ++++ | ||
| Line 501: | Line 504: | ||
| Zde algoritmus prochází vzorky podél paprsku od **nejbližšího bodu k nejvzdálenějšímu** (od %%$i = 0$%% do %%$i = n$%%). | Zde algoritmus prochází vzorky podél paprsku od **nejbližšího bodu k nejvzdálenějšímu** (od %%$i = 0$%% do %%$i = n$%%). | ||
| - | - **Princip: | + | - **Princip: |
| - **Výhody a Časné ukončení (Early termination): | - **Výhody a Časné ukončení (Early termination): | ||
| * Hlavní a naprosto klíčovou výhodou této metody je možnost **časného ukončení**. | * Hlavní a naprosto klíčovou výhodou této metody je možnost **časného ukončení**. | ||
| * Jakmile kumulovaná průhlednost (alpha) dosáhne hodnoty blížící se 1.0 (tj. materiál se stane plně neprůhledným), | * Jakmile kumulovaná průhlednost (alpha) dosáhne hodnoty blížící se 1.0 (tj. materiál se stane plně neprůhledným), | ||
| * Všechny další vzorky za tímto bodem už by stejně nebyly viditelné, takže je zbytečné je počítat. To může **výrazně zrychlit renderování**, | * Všechny další vzorky za tímto bodem už by stejně nebyly viditelné, takže je zbytečné je počítat. To může **výrazně zrychlit renderování**, | ||
| + | - **Nevýhody: | ||
| + | * Výpočet vyžaduje řešení **dvou rovnic** (jednu pro intenzitu a druhou pro průhlednost). | ||
| ++++ | ++++ | ||
| Line 514: | Line 519: | ||
| Prvním zásadním problémem je **nelinearita (percepční neuniformita)** mnoha běžných barevných prostorů (např. RGB, HSV). | Prvním zásadním problémem je **nelinearita (percepční neuniformita)** mnoha běžných barevných prostorů (např. RGB, HSV). | ||
| - V těchto prostorech matematická vzdálenost mezi dvěma barvami neodpovídá tomu, jak rozdíl vnímá lidské oko. Stejný číselný rozdíl v datech se může v jedné části barevného spektra jevit jako obrovský skok a v jiné jako neviditelná změna. | - V těchto prostorech matematická vzdálenost mezi dvěma barvami neodpovídá tomu, jak rozdíl vnímá lidské oko. Stejný číselný rozdíl v datech se může v jedné části barevného spektra jevit jako obrovský skok a v jiné jako neviditelná změna. | ||
| + | - Odstín neimplikuje řazení, jas ano. | ||
| + | - Odstín má vyšší rozlišitelnost než jas a sytost. | ||
| - **Duhová škála (Rainbow / Jet Colormap): | - **Duhová škála (Rainbow / Jet Colormap): | ||
| - **Řešení: | - **Řešení: | ||
| Line 674: | Line 681: | ||
| **1. Kontrola a ověřování analytických modelů (např. Regrese):** | **1. Kontrola a ověřování analytických modelů (např. Regrese):** | ||
| - Pokud při automatizované analýze aplikujeme na data matematický model (např. proložíme je regresní přímkou), i **jeden jediný silný outlier dokáže drasticky změnit sklon a posun této přímky**, což vede ke zcela chybné interpretaci celého vztahu. | - Pokud při automatizované analýze aplikujeme na data matematický model (např. proložíme je regresní přímkou), i **jeden jediný silný outlier dokáže drasticky změnit sklon a posun této přímky**, což vede ke zcela chybné interpretaci celého vztahu. | ||
| - | - Vizualizace (např. zobrazení bodového grafu s proloženou přímkou) nám umožní okamžitě vidět, že model selhává kvůli odlehlé hodnotě. Můžeme ji vizuálně identifikovat, | + | - Vizualizace (např. zobrazení bodového grafu s proloženou přímkou) nám umožní okamžitě vidět, že model selhává kvůli odlehlé hodnotě. Můžeme ji vizuálně identifikovat, |
| + | {{: | ||
| **2. Praktické aplikace (Detekce anomálií): | **2. Praktické aplikace (Detekce anomálií): | ||
| Line 680: | Line 688: | ||
| - **Kyberbezpečnost: | - **Kyberbezpečnost: | ||
| - **Bankovnictví a finance:** Detekce podvodů s kreditními kartami (kdy transakce neodpovídá typickému chování uživatele). | - **Bankovnictví a finance:** Detekce podvodů s kreditními kartami (kdy transakce neodpovídá typickému chování uživatele). | ||
| - | - V těchto doménách se běžně využívá *Vizuální analytika* a speciální mantry jako " | + | - V těchto doménách se běžně využívá |
| ++++ | ++++ | ||
| Line 849: | Line 857: | ||
| ++++ 2. Které vizuální proměnné LZE vnímat pre-pozornostně (Příklady)| | ++++ 2. Které vizuální proměnné LZE vnímat pre-pozornostně (Příklady)| | ||
| Lidský vizuální systém dokáže pre-pozornostně zpracovat celou řadu základních vizuálních vlastností (proměnných). Patří mezi ně například: | Lidský vizuální systém dokáže pre-pozornostně zpracovat celou řadu základních vizuálních vlastností (proměnných). Patří mezi ně například: | ||
| - | - **Odstín barvy (Color hue): | + | - **Odstín barvy (Color hue):** Např. jeden červený bod okamžitě vyskočí v moři modrých bodů. |
| - | - **Tvar (Shape): | + | - **Tvar (Shape):** Např. jeden kruh vyskočí v poli tvořeném samými čtverci. |
| - | - **Velikost, délka a šířka: | + | - **Velikost, délka a šířka:** Např. jedna výrazně delší čára mezi krátkými čarami. |
| - | - **Orientace / Sklon: | + | - **Orientace / Sklon:** Např. jedna šikmá čára mezi samými svislými čarami. |
| - | - **Intenzita (Svítivost): | + | - **Intenzita (Svítivost): |
| - **Pozice, Směr pohybu nebo 3D hloubka.** | - **Pozice, Směr pohybu nebo 3D hloubka.** | ||
| ++++ | ++++ | ||
| Line 861: | Line 869: | ||
| - **Konjunkce (kombinace) vlastností: | - **Konjunkce (kombinace) vlastností: | ||
| - | * %%Příklad:%% Hledáme " | + | * **Příklad:** Hledáme " |
| - | - **Text:** Čtení a hledání konkrétního slova v bloku textu (%%např.%% najít slovo " | + | - **Text:** Čtení a hledání konkrétního slova v bloku textu (např. najít slovo " |
| ++++ | ++++ | ||
| Line 869: | Line 877: | ||
| ++++ 1. Definice a algoritmus Marching Squares| | ++++ 1. Definice a algoritmus Marching Squares| | ||
| - | **Izočára (kontura / izolinie)** je čára, která spojuje body mající naprosto stejnou, konstantní skalární hodnotu (tzv. izo-hodnotu, | + | **Izočára (kontura / izolinie)** je čára, která spojuje body mající naprosto stejnou, konstantní skalární hodnotu (tzv. izo-hodnotu, |
| Pokud máme data zadaná jako 2D strukturovanou čtvercovou mřížku (hodnoty jsou uložené v uzlech mřížky), standardním algoritmem pro nalezení a vykreslení izočar je **Marching Squares** (pochodující čtverce). | Pokud máme data zadaná jako 2D strukturovanou čtvercovou mřížku (hodnoty jsou uložené v uzlech mřížky), standardním algoritmem pro nalezení a vykreslení izočar je **Marching Squares** (pochodující čtverce). | ||
| Line 876: | Line 884: | ||
| ++++ 2. Krok 1: Klasifikace uzlů a hledání průsečíků na hranách| | ++++ 2. Krok 1: Klasifikace uzlů a hledání průsečíků na hranách| | ||
| Algoritmus zpracovává mřížku následujícím způsobem: | Algoritmus zpracovává mřížku následujícím způsobem: | ||
| - | - **Klasifikace uzlů:** Pro každý uzel (vrchol) mřížky se určí, zda je jeho datová hodnota **větší nebo menší** než naše hledaná izo-hodnota %%$v$%%. (Vizuálně si můžeme uzly obarvit, | + | - **Klasifikace uzlů:** Pro každý uzel (vrchol) mřížky se určí, zda je jeho datová hodnota **větší nebo menší** než naše hledaná izo-hodnota %%$v$%%. (Vizuálně si můžeme uzly obarvit, např. modrá pro %%$>$%% a červená pro %%$<$%%). |
| - **Dělení hran:** Algoritmus prochází každou buňku (čtverec tvořený 4 uzly). Podívá se na každou její hranu. Pokud má hrana jeden uzel s hodnotou nad izo-hodnotou a druhý pod ní, znamená to, že izočára musí tuto hranu někde **protnout**. | - **Dělení hran:** Algoritmus prochází každou buňku (čtverec tvořený 4 uzly). Podívá se na každou její hranu. Pokud má hrana jeden uzel s hodnotou nad izo-hodnotou a druhý pod ní, znamená to, že izočára musí tuto hranu někde **protnout**. | ||
| - **Výpočet průsečíku: | - **Výpočet průsečíku: | ||
| Line 895: | Line 903: | ||
| - **Řešení: | - **Řešení: | ||
| * **Možnost 1:** Rozdělení čtverce na dva trojúhelníky. Trojúhelníky (se 3 vrcholy) nemají ambiguózní stavy, ale volba diagonály stále ovlivňuje výsledek. | * **Možnost 1:** Rozdělení čtverce na dva trojúhelníky. Trojúhelníky (se 3 vrcholy) nemají ambiguózní stavy, ale volba diagonály stále ovlivňuje výsledek. | ||
| - | * **Možnost 2 (Pokročilejší): | + | * **Možnost 2 (Pokročilejší): |
| ++++ | ++++ | ||
| + | |||
| + | ---- | ||
| ======= Question set 12 ======= | ======= Question set 12 ======= | ||
| Line 903: | Line 913: | ||
| ++++ 1. Typy relačních dat (grafů a sítí)| | ++++ 1. Typy relačních dat (grafů a sítí)| | ||
| - | Relační data vyjadřují vazby (hrany/links) mezi entitami (uzly/nodes). Lze je rozdělit do několika základních typů podle toho, jaké vlastnosti tyto vazby mají (zda mají směr a zda tvoří cykly): | + | Relační data vyjadřují vazby (hrany) mezi entitami (uzly). Lze je rozdělit do několika základních typů podle toho, jaké vlastnosti tyto vazby mají (zda mají směr a zda tvoří cykly): |
| - | - **Hierarchie / Stromy (Trees):** Relace vyjadřuje vztah " | + | - **Hierarchie / Stromy (Trees):** Relace vyjadřuje vztah " |
| - | - **Orientované acyklické grafy (DAG - Directed Acyclic Graph):** Hrany mají jasně určený směr, ale stále v nich nesmí vzniknout uzavřený cyklus. (%%Příklad:%% Návaznosti prerekvizit univerzitních předmětů - předmět A musím mít před B). | + | - **Orientované acyklické grafy (DAG - Directed Acyclic Graph):** Hrany mají jasně určený směr, ale stále v nich nesmí vzniknout uzavřený cyklus. (Příklad: Návaznosti prerekvizit univerzitních předmětů - předmět A musím mít splněný |
| - | - **Neorientované sítě (Undirected networks): | + | - **Neorientované sítě (Undirected networks): |
| - | - **Orientované sítě (Directed networks): | + | - **Orientované sítě (Directed networks): |
| ++++ | ++++ | ||
| Line 914: | Line 924: | ||
| Základním problémem vizualizace sítí je, že uzly typicky nemají předem dané prostorové souřadnice. Ty musí algoritmus vypočítat. Používají se 3 hlavní přístupy: | Základním problémem vizualizace sítí je, že uzly typicky nemají předem dané prostorové souřadnice. Ty musí algoritmus vypočítat. Používají se 3 hlavní přístupy: | ||
| - | - **1. Node-link diagramy (Spojení čarami):** Nejběžnější metoda. Uzly jsou body/tvary a vazby jsou čáry (nebo šipky). | + | - **Node-link diagramy (Spojení čarami):** Nejběžnější metoda. Uzly jsou body/tvary a vazby jsou čáry (nebo šipky). |
| * Pro stromy a DAG: Používá se **Sugiyamův rámec** (kreslí hierarchii do horizontálních vrstev shora dolů) nebo **Radiální / Balónové / Hyperbolické stromy**. | * Pro stromy a DAG: Používá se **Sugiyamův rámec** (kreslí hierarchii do horizontálních vrstev shora dolů) nebo **Radiální / Balónové / Hyperbolické stromy**. | ||
| * Pro obecné sítě (i s cykly): Používají se **Metody řízené silami (Force-directed layouts)**, jako např. Fruchterman-Reingold. Fungují jako fyzikální systém, kde se spojené uzly přitahují (jako na pružině) a nespojené odpuzují (jako magnety). | * Pro obecné sítě (i s cykly): Používají se **Metody řízené silami (Force-directed layouts)**, jako např. Fruchterman-Reingold. Fungují jako fyzikální systém, kde se spojené uzly přitahují (jako na pružině) a nespojené odpuzují (jako magnety). | ||
| - | - **2. Vizualizace pomocí ohraničení (Containment): | + | - **Vizualizace pomocí ohraničení (Containment): |
| - | - **3. Maticová vizualizace (Adjacency Matrix):** Řeší problém nečitelnosti (" | + | - **Maticová vizualizace (Adjacency Matrix):** Řeší problém nečitelnosti (" |
| ++++ | ++++ | ||
| ++++ 3. Jaké úlohy vizualizace relačních dat řeší| | ++++ 3. Jaké úlohy vizualizace relačních dat řeší| | ||
| - | Cílem vizualizace je poskytnout uživateli odpovědi na otázky zaměřené na topologii a atributy sítě. Úlohy se dělí podle svého cíle (target): | + | Cílem vizualizace je poskytnout uživateli odpovědi na otázky zaměřené na topologii a atributy sítě. Úlohy se dělí podle svého cíle: |
| - **Cílem je uzel (Item) nebo atribut:** | - **Cílem je uzel (Item) nebo atribut:** | ||
| Line 954: | Line 964: | ||
| - **Příklad vhodného využití: | - **Příklad vhodného využití: | ||
| - **Kde to NENÍ dobré:** Tam, kde je úkolem přesně vizuálně odhadovat velikosti, plochy, vzdálenosti nebo korelace. Prostorové zkreslení (deformace) totiž ničí schopnost oka posoudit, zda je nějaká čára rovná, nebo o kolik je jedna oblast větší než druhá. Pro mapy, kde chceme počítat hustotu, nebo pro scatterploty (kde úhel a vzdálenost určují korelaci) je Fisheye naprosto nevhodný, protože data vizuálně zdeformuje. | - **Kde to NENÍ dobré:** Tam, kde je úkolem přesně vizuálně odhadovat velikosti, plochy, vzdálenosti nebo korelace. Prostorové zkreslení (deformace) totiž ničí schopnost oka posoudit, zda je nějaká čára rovná, nebo o kolik je jedna oblast větší než druhá. Pro mapy, kde chceme počítat hustotu, nebo pro scatterploty (kde úhel a vzdálenost určují korelaci) je Fisheye naprosto nevhodný, protože data vizuálně zdeformuje. | ||
| + | ++++ | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ======= Question set 13 ======= | ||
| + | |||
| + | ===== Question 1: Focus + Context - výhody, nevýhody, příklady a využití u prostorových dat ===== | ||
| + | |||
| + | ++++ 1. Princip, výhody a nevýhody Focus + Context| | ||
| + | **Princip: | ||
| + | Tato technika umožňuje uživateli vidět objekt primárního zájmu (**fokus**) v plném detailu, a zároveň si na stejné obrazovce zachovat přehled o všech okolních informacích (**kontext**). Obě informace jsou integrovány do jednoho pohledu. | ||
| + | |||
| + | **Výhody: | ||
| + | - **Udržení orientace: | ||
| + | - **Nižší kognitivní zátěž:** Není potřeba přepínat mezi dvěma různými obrazovkami (jako u odděleného přehledu a detailu) a spoléhat se na krátkodobou paměť. | ||
| + | |||
| + | **Nevýhody: | ||
| + | - **Deformace (Distortion): | ||
| + | - **Ztráta proporcí: | ||
| + | ++++ | ||
| + | |||
| + | ++++ 2. Příklady technik Focus + Context| | ||
| + | - **Přiblížení rybím okem (Fisheye Zoom):** Bod pod kurzorem je obrovský, okraje sítě jsou smrštěné a stlačené k okrajům obrazovky. | ||
| + | - **Perspective Wall:** Zobrazení dat na 3D zdi, kde střed je rovně před divákem (fokus) a kraje ubíhají do perspektivy (kontext). | ||
| + | - **TableLens: | ||
| + | - **Hyperbolický strom:** Kořen (nebo vybraný uzel) je uprostřed s velkým prostorem, čím blíže k okrajům, tím více se prostor exponenciálně smršťuje. | ||
| + | ++++ | ||
| + | |||
| + | ++++ 3. Jak to udělat v prostorových datech (Spatial Data)| | ||
| + | Aplikovat Focus + Context na prostorová data (mapy, 3D objemy) je zrádné, protože prostorová data mají **inherentní geometrii a vzdálenosti**, | ||
| + | |||
| + | **Jak to tedy řešit u prostorových dat:** | ||
| + | - **Magické čočky (Magic Lenses):** Místo deformace celého prostoru uživatel pohybuje nad mapou virtuální " | ||
| + | - **Sémantický Focus + Context:** Nezvětšujeme fyzicky prostor, ale měníme sémantiku zobrazení. Například vybraný region na mapě (fokus) zobrazí detailní popisky a grafy, zatímco zbytek kontinentu (kontext) zůstane zobrazen jen jako obrysy bez textu. | ||
| + | - **Průhlednost a stínování u 3D objemových dat:** V lékařské vizualizaci (CT sken) nechceme deformovat orgány. Fokus (např. nádor nebo kosti) se vyrenderuje plně neprůhledně a barevně, zatímco kontext (okolní kůže a měkké tkáně) se vyrenderuje jako vysoce průhledný " | ||
| + | ++++ | ||
| + | |||
| + | |||
| + | ===== Question 2: 3 techniky pro vizualizaci stromů/ | ||
| + | |||
| + | ++++ 1. Node-link diagram (Tradiční stromové rozvržení)| | ||
| + | **Princip: | ||
| + | |||
| + | - **Výhody oproti ostatním: | ||
| + | - **Nevýhody oproti ostatním: | ||
| + | - **Vhodné vyhledávací dotazy (Úlohy):** | ||
| + | * "Kdo je přímým nadřízeným uzlu X?" | ||
| + | * "Jaká je nejkratší cesta od kořene k listu Y?" | ||
| + | * "Kolik hierarchických úrovní (hloubku) má tato struktura?" | ||
| + | ++++ | ||
| + | |||
| + | ++++ 2. Treemap (Vizualizace pomocí ohraničení)| | ||
| + | **Princip: | ||
| + | |||
| + | - **Výhody oproti ostatním: | ||
| + | - **Nevýhody oproti ostatním: | ||
| + | - **Vhodné vyhledávací dotazy (Úlohy):** | ||
| + | * " | ||
| + | * " | ||
| + | * Úlohy zaměřené na atributy listů spíše než na topologii. | ||
| + | ++++ | ||
| + | |||
| + | ++++ 3. Radiální / Hyperbolický strom| | ||
| + | **Princip: | ||
| + | |||
| + | - **Výhody oproti ostatním: | ||
| + | - **Nevýhody oproti ostatním: | ||
| + | - **Vhodné vyhledávací dotazy (Úlohy):** | ||
| + | * "Ukaž mi detailní okolí (potomky a nadřízené) tohoto konkrétního uzlu, ale chci stále vidět, kde v celkové síti jsem." | ||
| + | * " | ||
| + | ++++ | ||
| + | |||
| + | ---- | ||
| + | |||
| + | ======= Question set 14 ======= | ||
| + | |||
| + | ===== Question 1: Prostorová pole - popis skalárních, | ||
| + | |||
| + | ++++ 1. Prostorová pole a nutnost znát topologii mřížky| | ||
| + | Prostorová pole jsou datové struktury, které obsahují atributy distribuované v nějakém fyzickém nebo abstraktním prostoru. Skládají se ze dvou hlavních částí: **atributů** (samotné hodnoty) a **mřížky (grid)**. | ||
| + | |||
| + | Mřížka diskretizuje prostor pomocí uzlů (pozic) a buněk. Klíčovou vlastností mřížky je její **topologie (konektivita)**. | ||
| + | - **Co to je:** Konektivita definuje, jak jsou jednotlivé uzly navzájem propojeny a jaké tvoří buňky (např. trojúhelníky, | ||
| + | - **Proč je nutná:** V reálném světě máme data změřena jen v diskrétních bodech (uzlech). Abychom zjistili hodnotu kdekoli jinde v prostoru (abychom zrekonstruovali spojitý model), musíme data **interpolovat**. Způsob, jakým je mřížka definována (její konektivita), | ||
| + | - **Důsledek: | ||
| + | ++++ | ||
| + | |||
| + | ++++ 2. Skalární a volumetrická pole + techniky zobrazení| | ||
| + | **Skalární pole:** Každému bodu v prostoru je přiřazena přesně jedna číselná hodnota (skalár). Příkladem je rozložení teploty nebo tlaku na 2D mapě. | ||
| + | - **Techniky pro 2D:** | ||
| + | * **Mapování na barvu:** Hodnota se převede na barvu pomocí percepčně uniformní barevné škály (vytvoří se " | ||
| + | * **Konturování (Izočáry): | ||
| + | |||
| + | **Volumetrická (objemová) pole:** Jedná se o 3D skalární pole. Hodnoty jsou definovány ve 3D prostoru (často v pravidelné voxelové mřížce). Příkladem je CT nebo MRI sken lidského těla (mapuje se hustota tkáně). | ||
| + | - **Techniky pro 3D (Nepřímé): | ||
| + | - **Techniky pro 3D (Přímé - Direct Volume Rendering): | ||
| + | ++++ | ||
| + | |||
| + | ++++ 3. Vektorová pole + techniky zobrazení| | ||
| + | **Vektorová pole:** Každému bodu v prostoru je přiřazen vektor, který má **směr i velikost (magnitudu)**. Příkladem je rychlost a směr větru nebo proudění tekutin (voda, vzduch). Klíčovými vlastnostmi k vizualizaci jsou často divergence (zdroje a propady) a vorticita (rotace/ | ||
| + | - **Techniky zobrazení: | ||
| + | * **Glyfy (Šipky):** V uzlech mřížky se vykreslí geometrický objekt (šipka), jehož orientace ukazuje směr a délka ukazuje velikost vektoru. Trpí na překrývání (clutter) a jsou nevhodné pro zobrazení kontinuity. | ||
| + | * **Proudnicové objekty (Trasování částic): | ||
| + | * **Texturové metody (LIC - Line Integral Convolution): | ||
| + | ++++ | ||
| + | |||
| + | |||
| + | ===== Question 2: Force-directed layout - popis, algoritmy a vhodné použití ===== | ||
| + | |||
| + | ++++ 1. Co je Force-directed layout a k čemu je vhodný| | ||
| + | **Metody řízené silami (Force-directed layouts)** představují fyzikálně inspirovaný přístup k výpočtu rozvržení (pozic uzlů) v relačních datech. | ||
| + | - **Princip: | ||
| + | |||
| + | **Vhodné a nevhodné použití: | ||
| + | - **Kde excelují: | ||
| + | - **Kde selhávají: | ||
| + | * U stromů a hierarchií (zcela zničí vizuální strukturu rodič-potomek, | ||
| + | * U velmi velkých a hustých grafů vytvářejí nečitelný zmatek plný překrývajících se čar (tzv. **hairball efekt**). | ||
| + | * Nijak **neberou v úvahu křížení hran** (nesnaží se ho primárně minimalizovat). | ||
| + | * Často uvíznou v lokálním minimu (graf se " | ||
| + | ++++ | ||
| + | |||
| + | ++++ 2. Eadesův model a Kamada-Kawai| | ||
| + | **Eadesův model (1984):** | ||
| + | Jeden z prvních a nejjednodušších modelů. Uzly se chovají jako ocelové kroužky a hrany jako pružiny. | ||
| + | - **Přitažlivá síla:** Působí **pouze** mezi uzly, které jsou **spojené hranou**. Snaží se uzly přitáhnout k sobě na ideální vzdálenost. | ||
| + | - **Odpudivá síla:** Působí vzájemně mezi **všemi** uzly v grafu (i těmi nespojenými). Brání tomu, aby se všechny uzly shlukly do jednoho bodu. Klesá se vzdáleností. | ||
| + | - Algoritmus v cyklu počítá celkovou sílu na každý uzel a posouvá ho o malý kousek v jejím směru. | ||
| + | |||
| + | **Model Kamada-Kawai (1989):** | ||
| + | Jedná se o čistě **energetický model**. | ||
| + | - **Princip: | ||
| + | - Ideální délka této pružiny je definována jako **nejkratší cesta (shortest path)** mezi danými dvěma uzly v topologii grafu. | ||
| + | - Cílem je minimalizovat globální potenciální energii. Algoritmus neposouvá všechny uzly naráz, ale najde uzel s maximální energií (ten nejvíce " | ||
| + | ++++ | ||
| + | |||
| + | ++++ 3. Model Fruchterman-Reingold| | ||
| + | **Fruchterman-Reingold (1991)** je vylepšením Eadesova modelu a v praxi je velmi oblíbený pro svou rychlost a eleganci. | ||
| + | - **Fyzikální analogie:** Každý uzel je elektricky nabitá částice (všechny uzly se navzájem odpuzují). Každá hrana je elastická pružina (spojené uzly se přitahují). | ||
| + | |||
| + | **Klíčový prvek - Zavedení " | ||
| + | - Aby se algoritmus nezasekl ve špatném lokálním minimu, používá koncept teploty (inspirovaný metalurgií). Teplota funguje jako **maximální limit pro velikost posunu uzlu** v jedné iteraci. | ||
| + | - Na začátku se teplota nastaví vysoko. Systém je " | ||
| + | - V každé další iteraci se teplota o něco **sníží (systém chladne)**. Pohyby uzlů se stávají stále menšími a jemnějšími, | ||
| ++++ | ++++ | ||