# Generating a graph from .mat file

The .mat file contains the adjacency matrix of a graph. How can I generate the underlying graph of this matrix in Jupyter?

Generating a graph from .mat file

2

I had a look on the web, and it seems that you are speaking about `.mat`

matrices provided by matlab. So, `scipy`

, which is shipped with Sage already has a tool to read `.mat`

files:

```
sage: from scipy.io import loadmat
sage: M = loadmat('<path_to_your_file.mat>')
```

As you can see, the object M is a dictionary:

```
sage: M
```

What is of interest for us is the `a`

field:

```
sage: M['a']
array([[[ 1., 4., 7., 10.],
[ 2., 5., 8., 11.],
[ 3., 6., 9., 12.]]])
```

Which is an aray with a single entry that is the array we want:

```
sage: M['a'][0]
array([[ 1., 4., 7., 10.],
[ 2., 5., 8., 11.],
[ 3., 6., 9., 12.]])
```

This can then be transformed into a Sage matrix:

```
sage: m = matrix(RDF,M['a'][0])
sage: m
[ 1.0 4.0 7.0 10.0]
[ 2.0 5.0 8.0 11.0]
[ 3.0 6.0 9.0 12.0]
sage: m.parent()
Full MatrixSpace of 3 by 4 dense matrices over Real Double Field
```

If your matrix is the adjacency matrix of a graph, it should be square and symmetric, in which case you can recover the graph with:

```
sage: G = Graph(m)
```

Asked: **
2018-07-19 22:56:52 -0500
**

Seen: **68 times**

Last updated: **Jul 20 '18**

Access to files produced by view() in Jupyter

sagemath windows 8.1 launching jupyter from another directory or drive

SAGE - How to load a .mac file

Make ipython notebook world-viewable?

Accessing Maple from Sage osx (.dmg version)

jupyter notebook extensions in Sage 7.3?

how to render html or latex tables in jupyter notebook?

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.

What is the format of the

`.mat`

file ? It it a text file ? Could you please provide a concrete example ?The documentation for "mat-files" would seem to be: