Käytä NetworkX: ää luodaksesi kaavioita ja käytä Matplotlib tai Gephi sen näyttämiseen

Use Networkx Create Graphs



Abstrakti

Tässä artikkelissa esitän yksinkertaisesti:

  • NetworkX, luo sen avulla kaavio
  • Matplotlib & Gephi, näytä luomamme kaavio

Ympäristö, jota käytän:



  • Windows 10
  • Python 3.6
  • networkx 2.2 (Python-paketti)
  • matplotlib 3.0.1 (Python-paketti)
  • Gephi 0.9.2 (Java 11.0.1 -käyttöjärjestelmässä)

Luo kaavio

Ensin ladataan ja asennetaan python-paketti verkkox ja tuo sitten se:



import netwrokx as nx

Seuraavaksi luomme kaavion, jossa on joitain solmuja ja reunoja:



G = nx.Graph() G.add_node('a') G.add_node('b') # add node one by one G.add_nodes_from([1, 2, 3, ]) # use list to add nodes G.add_edge('a', 'b') # add edge one by one G.add_edges_from([('a', 1), ('a', 2), ('a', 3), ]) # use list to add edges

nyt meillä on graafi G, jossa on neljä solmua ja neljä reunaa. Voisimme luoda suunnatun kuvaajan käytön nx.DiGraph() sama.

Näytä se Matplotlibin kanssa

Nyt voimme näyttää tämän kaavion, tuoda ensin python-paketin matplotlib seuraavasti:

import matplotlib.pyplot as plt

sitten piirrämme sen ja näytämme sitä:



nx.draw(G, with_labels=True) plt.show()

tarkista nyt mitä saimme:
kaavio
LoL, ihmeellistä, eikö olekin?

Tallenna kaavio

Voisimme tallentaa luomamme kaavion tiedostoksi, saimme valita useita valmiita kaaviomuotoja GEXF , GraphML , Suolakurkku jne. Voit napsauttaa tässä nähdäksesi lisää kaaviomuotoja.
Nyt meillä on python-objekti tai kaavio G , tallenna tai lue se sitten suolakurkkutiedostolla:

nx.write_gpickle(G, 'the_great_graph.pkl') F = nx.read_gpickle('the_great_graph.pkl')

VerkkoX on tehokas työkalu monimutkaisten kaavioiden manipulointiin, mukana on paljon toimintoja, katso dokumentointi oppia lisää mitä tarvitset.

Näytä se Gephin kanssa

Mikä on Gephi?

Gephi on johtava visualisointi- ja etsintäohjelmisto kaikenlaisille kaavioille ja verkoille. Gephi on avoimen lähdekoodin ja ilmainen.
Toimii Windowsissa, Mac OS X: ssä ja Linuxissa.

Joskus saimme suuren kaavion, joka saattaa sisältää yli tuhansia solmuja ja reunoja, minkä jälkeen sitä oli vaikea näyttää matplotlibillä, mutta saimme toisen vaihtoehdon visualisoida se: Missä .

Lataa ja asenna Gephi

Mene virallinen sivusto ladata se, asennus on erittäin helppoa, napsauta vain seuraava seuraava ja seuraava.

Lataa ja asenna Java

Vaikuttaa siltä, ​​että Gephi tarvitsee Java 1.8: n tai uudemman avaamaan sen, siirry Java-palvelimeen virallinen sivusto lataa ja asenna se, sama helppo, mutta muista asennuspolku, kuten C:Program FilesJavajdk-11.0.1
seuraavaksi siirrymme Gephi-asennushakemistoon, sitten jne voimme nähdä tiedoston gephi.conf , avaa se millä tahansa editorilla, kuten solmu.
Etsi rivi, joka alkaa # jdkhome='...'': lla, ja siirrä sitten merkkiä # , korvaa tarjouspolku Java-asennuspolulla seuraavasti:

jdkhome='C:Program FilesJavajdk-11.0.1'

Lopuksi tallennamme gephi.conf tiedosto ja avaa sitten Missä .

Käsittele suuria kaavioita

Gefissä voimme avata erittäin suuren kaavion ja työllistää monia Asettelualgoritmit näyttää kaavion, kuten ForceAtlas 2 .
Seuraava esimerkki on, että tässä suunnatussa kuvaajassa on 911 714 solmua ja 1 216 998 reunaa:
Suuri kaavio

Viitteet

[1] NetworkX: n yleiskatsaus. (2018, 19. syyskuuta). Haettu osoitteesta https://networkx.github.io/documentation/stable/index.html