# Networkx Analysis In Machine Learning | Python Machine Learning Assignment Help | Codersarts

Before starting the **networkx **first, we know **what is a graph? **and **why we use graphs?**

In mathematics we will learn the graph and their applications like that:

It denoted by edge and vertices:

V = {A, B, C, D, F}

E = {((A,B), (B,C), etc}

**Now we can say:**

"Graphs are mathematical structures used to study pairwise relationships between objects and entities."

In **data Science**, it created using a package called "**networkx**" that makes it easy to draw the graphs.

### Graphs in python

We will be using the networkx package in Python.

It can install using the pip command.

Now we will creating simple graph uisng:

**Step 1**: In first step import networkx libraries

`import networkx as nx`

**Step 2**: Creating Graph

`G = nx.Graph() `

**Step 3**: Add a node

```
# Add a node
G.add_node(1)
#Adding Multiple Nodes
G.add_nodes_from([2,3])
```

**Step 4**: Adding Edges

```
# Add edges
G.add_edge(1,2)
```

### Other Useful methods which is used to create graphs

```
subgraph(G, nbunch) - induced subgraph view of G on nodes in nbunch
union(G1,G2) - graph union
disjoint_union(G1,G2) - graph union assuming all nodes are different
cartesian_product(G1,G2) - return Cartesian product graph
compose(G1,G2) - combine graphs identifying nodes common to both
complement(G) - graph complement
create_empty_copy(G) - return an empty copy of the same graph class
convert_to_undirected(G) - return an undirected representation of G
convert_to_directed(G) - return a directed representation of G
```

### Accessing edges and nodes

Nodes and Edges can be accessed together using the **G.nodes()** and **G.edges()**

`G.nodes()`

**Output:**

NodeView((1, 2, 3))

`G.edges()`

**Output:**

EdgeView([(1, 2), (1, 3), (2, 3)])

### Graph Visualization

Networkx provides basic functionality for visualizing graphs. matplotlib offers some convenience functions.

"**GraphViz**" is probably the best tool for us as it offers a Python interface in the form of "**PyGrapgViz**"

```
%matplotlib inline
import matplotlib.pyplot as plt
nx.draw(G)
```

Now working with graphViz, which is Install from Graphviz from the website:

```
import pygraphviz as pgv
d={'1': {'2': None}, '2': {'1': None, '3': None}, '3': {'1': None}}
A = pgv.AGraph(data=d)
print(A) # This is the 'string' or simple representation of the Graph
```

**Output**:

strict graph "" { 1 -- 2; 2 -- 3; 3 -- 1; }

Need help Using realtime dataset you can contact us at below contact details: