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 17:13] – 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 1: Relační data - typy grafů, jak je vizualizovat, | ||
| + | |||
| + | ++++ 1. Typy relačních dat (grafů a sítí)| | ||
| + | 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 " | ||
| + | - **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ý před B). | ||
| + | - **Neorientované sítě (Undirected networks): | ||
| + | - **Orientované sítě (Directed networks): | ||
| + | ++++ | ||
| + | |||
| + | ++++ 2. Jak relační data vizualizovat (Techniky)| | ||
| + | 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: | ||
| + | |||
| + | - **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 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). | ||
| + | - **Vizualizace pomocí ohraničení (Containment): | ||
| + | - **Maticová vizualizace (Adjacency Matrix):** Řeší problém nečitelnosti (" | ||
| + | ++++ | ||
| + | |||
| + | ++++ 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: | ||
| + | |||
| + | - **Cílem je uzel (Item) nebo atribut:** | ||
| + | * **Úloha:** Najít uzly splňující určitá kritéria atributů nebo topologie sítě. | ||
| + | * **Příklady: | ||
| + | - **Cílem je vazba (Link):** | ||
| + | * **Úloha:** Identifikovat existenci nebo atributy hran. | ||
| + | * **Příklady: | ||
| + | - **Cílem je charakteristika sítě jako celku (Network characteristics): | ||
| + | * **Úloha:** Zkoumání globálních a strukturálních vlastností. | ||
| + | * **Příklady: | ||
| + | ++++ | ||
| + | |||
| + | |||
| + | ===== Question 2: Geometrický, | ||
| + | |||
| + | ++++ 1. Geometrické přiblížení (Geometric Zoom)| | ||
| + | **Popis:** Funguje jako obyčejná lupa. Pouze lineárně mění měřítko (zvětšuje nebo zmenšuje) zobrazeného obrazu. Pokud se obraz oddálí, objekty se zmenší. Informace mimo aktuální výřez obrazovky jsou zahozeny (nejsou vidět). | ||
| + | - **Příklad vhodného využití: | ||
| + | - **Kde to NENÍ dobré:** Není dobrý pro textová nebo mapová data. Když geometricky oddálíme mapu světa, texty (názvy měst) se zmenší natolik, že z nich zbudou jen nečitelné pixely. Když graf naopak příliš přiblížíme, | ||
| + | ++++ | ||
| + | |||
| + | ++++ 2. Sémantické přiblížení (Semantic Zooming)| | ||
| + | **Popis:** Při tomto přiblížení objekty nemění jen svou fyzickou velikost, ale dynamicky **mění svůj vzhled, reprezentaci a úroveň detailu** na základě toho, jak moc jsou přiblížené. | ||
| + | - **Příklad vhodného využití: | ||
| + | - **Kde to NENÍ dobré:** U vizualizací, | ||
| + | ++++ | ||
| + | |||
| + | ++++ 3. Přiblížení rybím okem (Fisheye Zoom / Focus+Context)| | ||
| + | **Popis:** Kombinuje zvětšení (zoom) s prostorovou deformací. Bod zájmu (fokus) se na obrazovce extrémně zvětší a zobrazí v maximálním detailu, zatímco jeho okolí (kontext) se na okrajích obrazovky postupně deformuje (stlačuje a zmenšuje), aby se vše vešlo do jednoho pohledu. | ||
| + | - **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. | ||
| + | ++++ | ||
| ---- | ---- | ||
| + | ======= Question set 13 ======= | ||
| - | ======= Question | + | ===== Question 1: Focus + Context - výhody, nevýhody, příklady a využití u prostorových dat ===== |
| - | ===== Question | + | ++++ 1. Princip, výhody a nevýhody Focus + Context| |
| + | **Princip:** | ||
| + | Tato technika umožňuje uživateli vidět objekt primárního zájmu | ||
| - | ++++ 1. Typy atributů dat| | + | **Výhody: |
| - | Atributy popisují vlastnosti jednotlivých datových položek. Rozlišujeme je do dvou hlavních kategorií na základě toho, zda mají nějaké přirozené pořadí: | + | - **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 | ||
| - | - **Nominální / Kategorické (Nominal / Categorical):** | + | **Nevýhody:** |
| - | * Nemají žádné inherentní uspořádání (ve smyslu kvantity nebo velikosti). | + | - **Deformace |
| - | * Slouží pouze k identifikaci nebo rozlišení. | + | |
| - | * Lze je porovnávat pouze na rovnost (stejné/ | + | ++++ |
| - | * %%Příklad: | + | |
| - | - **Uspořádané | + | |
| - | * Mají nějaké přirozené pořadí. Dále se dělí | + | |
| - | * **Ordinální (Ordinal): | + | |
| - | * **Kvantitativní (Quantitative):** Jsou uspořádané a umožňují aritmetické operace. Dělí se na: | + | |
| - | * **Diskrétní (Discrete): | + | |
| - | * **Spojité (Continuous): | + | |
| - | U uspořádaných atributů dále rozlišujeme | + | ++++ 2. Příklady technik Focus + Context| |
| - | - **Sekvenční:** Pohybují se od minima k maximu v jednom směru (%%např.%% výška hory). | + | - **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. |
| - | - **Divergentní:** Dělí se do dvou skupin, | + | - **Perspective Wall:** Zobrazení dat na 3D zdi, kde střed je rovně před divákem |
| - | - **Cyklické:** Hodnoty se vrací zpět k počátečnímu bodu (%%např.%% hodiny v den). | + | - **TableLens:** V tabulce jsou některé |
| + | - **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. | ||
| ++++ | ++++ | ||
| - | ++++ 2. Typy datových sad| | + | ++++ 3. Jak to udělat v prostorových datech (Spatial Data)| |
| - | Datové sady lze rozdělit do několika základních kategorií podle toho, zda obsahují prostorové nebo abstraktní informace: | + | Aplikovat Focus + Context na prostorová data (mapy, 3D objemy) je zrádné, protože prostorová data mají **inherentní geometrii a vzdálenosti**, |
| - | - **Prostorová data (Spatial Data):** Mají přirozené geometrické nebo topologické uspořádání (typické pro vědeckou vizualizaci | + | **Jak to tedy řešit u prostorových dat:** |
| - | | + | |
| - | * **Geometrie (Geometry):** Popisuje tvary a struktury objektů (sítě, vrcholy, hrany, stěny). Typicky nemají přímo přidělené datové atributy jako pole, ale definují samotný fyzický tvar (%%např.%% 3D model zeměkoule). | + | |
| - | - **Abstraktní data (Abstract Data):** Nemají přirozené prostorové uspořádání. Jejich vizualizace vyžaduje nalezení vhodného mapování | + | - **Průhlednost a stínování u 3D objemových dat:** V lékařské vizualizaci |
| - | * **Tabulková data:** Uspořádána do řádků (položky/ | + | |
| - | * **Relační data (Sítě / Grafy):** Popisují vztahy. Skládají | + | |
| - | * **Textová data:** Volně strukturovaná data (dokumenty, korpusy, logy). | + | |
| - | - **Kombinovaná | + | |
| - | * **Geografická data:** Mají geometrii (lokaci na mapě), ke které jsou připojena abstraktní data (%%např.%% počet obyvatel). | + | |
| - | * **Časově závislá data:** Atributy a/nebo topologie dat se mění v průběhu času. | + | |
| ++++ | ++++ | ||
| - | ++++ 3. Jak kódujeme atributy| | ||
| - | Pro abstraktní data, která postrádají inherentní prostorovou složku (jako jsou tabulky), musíme atributům vizuální a prostorové charakteristiky uměle přiřadit. Kódování probíhá pomocí vizuálních kanálů: | ||
| - | - **Kódování na pozici v 2D (Position):** Pozice je zdaleka **nejpřesnější | + | ===== Question 2: 3 techniky pro vizualizaci stromů/ |
| - | * **Pozice na společné škále | + | |
| - | * **Pozice na zarovnané škále (Position on aligned scale):** Druhý nejpřesnější kanál | + | ++++ 1. Node-link diagram |
| - | * **Rozvržení os (Axis layouts):** Pozici můžeme organizovat různými způsoby: | + | **Princip:** Uzly jsou reprezentovány tvary (kruhy, text), hrany jsou čáry spojující rodiče a potomka. Často využívá **Sugiyamův rámec** pro orientaci shora dolů. |
| - | | + | |
| - | * **Neortogonální osy:** Osy se protínají, | + | - **Výhody oproti ostatním:** Naprosto bezkonkurenční v čitelnosti topologie |
| - | * **Paralelní osy:** Osy umístěné rovnoběžně vedle sebe (tzv. paralelní souřadnice, výborné pro vícerozměrná data). | + | |
| - | - **Kódování pomocí tvaru a glyfů:** | + | - **Vhodné vyhledávací dotazy (Úlohy):** |
| - | * **Tvar (Shape):** Silný kanál pro kategorická (nominální) data. Neimplikuje žádné uspořádání. Aplikuje se typicky na bodové značky (kruh pro jednu kategorii, čtverec pro druhou). | + | * "Kdo je přímým nadřízeným uzlu X?" |
| - | * **Glyfy (Glyphs):** Malé a často složité grafické symboly, které řeší problém **velkého počtu atributů najednou**. Různé parametry symbolu (délka ramen, velikost, barva, úhel) jsou mapovány na různé atributy daného záznamu. | + | * "Jaká je nejkratší cesta od kořene k listu Y?" |
| - | * %%Příklady: | + | * "Kolik hierarchických úrovní |
| ++++ | ++++ | ||
| - | ++++ 4. Požadavky na vizuální kanály a Princip expresivity| | + | ++++ 2. Treemap (Vizualizace pomocí ohraničení)| |
| - | Pro správnou vizualizaci je nutné vybrat vizuální kanály, které odpovídají typu atributu. K tomu slouží | + | **Princip:** Namísto čar se využívá vnořování. Kořen stromu |
| - | Základní pravidla: | + | |
| - | | + | - **Nevýhody oproti ostatním:** Je velmi obtížné z něj vyčíst samotnou strukturu hierarchie |
| - | * Typické kanály: Pozice na společné ose (nejpřesnější), délka, úhel, plocha, svítivost barvy (luminance) nebo sytost (saturation). | + | - **Vhodné vyhledávací dotazy |
| - | - **Neuspořádaná | + | |
| - | * Typické kanály: Prostorová oblast, odstín barvy (color hue), tvar, pohyb. | + | * " |
| - | * Tyto kanály slouží k rozlišení a seskupení, ne k vyjádření toho, že je něco " | + | * Úlohy zaměřené na atributy listů spíše než na topologii. |
| + | ++++ | ||
| - | **Dekompozice barvy jako příklad:** | + | ++++ 3. Radiální / Hyperbolický strom| |
| - | - **Odstín (Hue):** Neimplikuje pořadí, má vysokou rozlišitelnost $\rightarrow$ ideální pro **kategorická | + | **Princip:** Kořen je umístěn do středu. Větve se rozbíhají směrem ven v soustředných kruzích. Hyperbolický strom k tomu přidává nelineární prostor – střed je obrovský (fokus) a okraje se exponenciálně zmenšují a houstnou (kontext). |
| - | - **Svítivost a Sytost | + | |
| + | - **Výhody oproti ostatním:** Oproti Node-link diagramu lépe využívá obvod kruhu pro zobrazení mnoha listů najednou. Hyperbolický strom řeší problém s místem plynulou interakcí | ||
| + | - **Nevýhody oproti ostatním: | ||
| + | - **Vhodné vyhledávací dotazy | ||
| + | * "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 | + | ======= Question |
| - | ++++ 1. Co je LIC a základní princip| | + | ===== Question |
| - | **Line Integral Convolution (LIC)** je pokročilá metoda vizualizace | + | |
| - | {{: | + | ++++ 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)**. | ||
| - | **Princip metody:** | + | Mřížka diskretizuje prostor pomocí uzlů (pozic) a buněk. Klíčovou vlastností mřížky je její **topologie (konektivita)**. |
| - | - **Vstup:** Používá se **bílý šum (white noise)** jako vstupní textura. Bílý šum nemá žádné předchozí korelace, což zajišťuje, že výsledné vizuální vzory vzniknou | + | - **Co to je:** Konektivita definuje, jak jsou jednotlivé uzly navzájem propojeny a jaké tvoří buňky |
| - | - **Idea:** Pro každý texel (pixel textury) se **korelují hodnoty sousedních texelů podél proudnice** | + | - **Proč je nutná:** V reálném světě máme data změřena jen v diskrétních bodech |
| - | - **Výsledek:** Podél proudnic jsou hodnoty textury vizuálně koherentní | + | - **Důsledek:** Pokud změníme topologii |
| ++++ | ++++ | ||
| - | ++++ 2. Jak funguje algoritmus LIC| | + | ++++ 2. Skalární a volumetrická pole + techniky zobrazení| |
| - | Fungování metody lze popsat | + | **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ě. |
| - | - Vytvoří se výchozí 2D textura bílého šumu, kterou označíme %%$T(x, y)$%%. | + | - **Techniky pro 2D:** |
| - | - Pro **každý pixel** výsledného obrazu | + | * **Mapování na barvu:** Hodnota se převede na barvu pomocí percepčně uniformní barevné škály (vytvoří se " |
| - | - Intenzita | + | * **Konturování (Izočáry):** Spojování bodů se stejnou hodnotou. Používá se algoritmus **Marching Squares**. Lze kombinovat s barevným pruhováním |
| - | | + | |
| - | {{: | + | **Volumetrická (objemová) pole:** Jedná |
| + | - **Techniky pro 3D (Nepřímé): | ||
| + | - **Techniky pro 3D (Přímé - Direct Volume Rendering):** Neextrahují geometrii, obraz se počítá | ||
| ++++ | ++++ | ||
| - | ++++ 3. Vlastnosti a výhody metody LIC| | + | ++++ 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í |
| - | - **Laminární i turbulentní proudění:** LIC je vynikající pro zobrazení obou typů proudění. V oblastech laminárního toku tvoří hladké paralelní | + | - **Techniky zobrazení: |
| - | - **Aplikace na 3D povrchy:** Ačkoliv se často používá ve 2D, metodu lze aplikovat i na 3D povrchy | + | * **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. |
| - | - **Kombinace s barevným kódováním:** Tzv. **Color-mapped LIC**. Vzhledem k tomu, že klasický LIC ukazuje pouze orientaci | + | * **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 | ||
| + | - **Princip:** Na graf se pohlíží jako na systém fyzikálních objektů. Uzly představují hmotná tělesa nebo částice a hrany fungují jako síly (např. pružiny), které na ně působí. Algoritmus hledá rovnovážný stav – konfiguraci s **lokálně minimální energií**, kde se přitažlivé a odpudivé síly vyruší a součet sil působících na každý uzel je roven nule. | ||
| + | |||
| + | **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 | ||
| + | * Nijak **neberou v úvahu křížení hran** | ||
| + | * Č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 | ||
| + | |||
| + | **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, | ||
| ++++ | ++++ | ||
| - | ---- | ||