1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Úvod do analýzy sítí v Pythonu

Connected

cvičení

Vizualizace pomocí maticových grafů

Teď si vyzkoušíš svůj první „efektní" způsob vizualizace grafu: maticový plot. K tomu slouží funkce matrix() z balíčku nxviz. Stejně jako ostatní funkce nejvyšší úrovně v nxviz vrací objekt matplotlib axes, který zobrazíš pomocí plt.show().

nxviz je balíček pro přehlednou vizualizaci grafů. Pod pokličkou funkce matrix využívá nx.to_numpy_array(G), která vrátí graf ve formě matice. Každý uzel odpovídá jednomu sloupci a jednomu řádku; hrana mezi dvěma uzly je označena hodnotou 1. Při tomto převodu se však zachovají pouze metadata weight — ostatní metadata se ztratí, což si ověříš pomocí příkazu assert.

Opačný směr zajišťuje nx.from_numpy_array(A), který ti umožní rychle vytvořit graf z NumPy pole. Výchozí typ grafu je Graph(); pokud chceš použít DiGraph(), je třeba to upřesnit pomocí klíčového argumentu create_using, například: nx.from_numpy_array(A, create_using=nx.DiGraph).

Ještě jedna poznámka: matplotlib.pyplot a networkx jsou už naimportované jako plt a nx a graf T je předem načtený. Pro jednoduchost a rychlost jsme ze sítě vybrali jen 100 hran.

Pokyny

100 XP
  • Importuj matrix z nxviz.
  • Zobraz graf T jako maticový plot:
    • Vytvoř maticový plot s názvem m pomocí funkce nv.matrix() s argumentem T.
    • Zobraz plot pomocí plt.show().
  • Převeď graf do maticového formátu a pak ho zpátky do podoby NetworkX grafu jako orientovaný graf. Tento krok je už hotový.
  • Zkontroluj, že metadata category u každého uzlu chybí. I to je už připraveno — klikni na 'Submit Answer' a podívej se na výsledky!