spatialgraph2D

Version 3.1.1 (4,46 KB) von Matt J
Creates a graph object with 2D spatial locations associated with the nodes
233 Downloads
Aktualisiert 7. Mai 2024

Lizenz anzeigen

This submission defines a graph class which allows 2D (x,y) location data to be attached to the nodes. It was designed with mosaic graphs in mind. By a mosaic graph, I mean a graph in which distinct edges may intersect one another only at the nodes. Currently, its main capability is decomposing a mosaic graph into its constituent polygons. As an example, given the graph,
s = [1 1 1 2 3 3 4 4 5 6 7 6 8 9 10 10 12 12 13 14 15 16 17 17 18 19 20 21 20 25];
t = [2 8 18 3 4 23 5 21 6 7 8 11 9 10 11 12 14 13 15 18 16 17 18 25 19 20 1 22 24 26];
G = graph(s,t);
we associate the nodes of G to the following x, y data,
x = [0.5 0 0 0 0.5 1 1.5 2 3 3 3 5.5 6 4 6 6 4 3 2 0.5 -1 -2 -1 1.5 4.5 4.5];
y = [0 0.5 1 1.5 2 2 1.5 1 1 1.5 2 1 0.5 0.5 0 -1 -1 -0.5 -1 -1 1 0.5 0.5 -0.5 -0.5 0];
We can create a spatialgraph2D object using either of the following,
obj=spatialgraph2D(G,x,y);
obj=spatialgraph2D.fromst(s,t,x,y);
Then, we can obtain a polyshape array of all the constituent polygons by doing,
pgon=polyshape(obj);
Or, obtain the node sequences demarcating each polygon with the syntax,
nodeSequences=pgonNodes(obj);
To visualize the decomposition, the class has several plotting methods. The following was used to generate the image thumbnail above.
mosaic(obj);

Zitieren als

Matt J (2024). spatialgraph2D (https://www.mathworks.com/matlabcentral/fileexchange/73630-spatialgraph2d), MATLAB Central File Exchange. Abgerufen .

Kompatibilität der MATLAB-Version
Erstellt mit R2018a
Kompatibel mit R2016b und späteren Versionen
Plattform-Kompatibilität
Windows macOS Linux
Kategorien
Mehr zu Directed Graphs finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Veröffentlicht Versionshinweise
3.1.1

Small efficiency update

3.1.0

MAJOR UPDATE:
*Complete revision of the algorithm that decomposes the graph into polygons, needed to address reported failure cases.
*Added the pgonNodes() method.

2.1.0

Added support for directed graphs

2.0.7

Description update

2.0.6

Description update

2.0.5

The polyshape() method now returns an empty polyshape and labelIndices cell as outputs when no mosaic polygons exist in the graph.

2.0.4

Bug fix dealing with graphs with no polygons present.

2.0.3

Description update

2.0.2

Added support for abbreviated syntaxes spatialgraph2D(G) and spatialgraph2D(G,[[,[],labels)

2.0.1

Minor change which should improve efficiency slightly.

2.0

Removed restriction on multiple mosaics in polyshape() method. All polygons in the graph should now be found, regardless of how they are interconnected.

1.0.4

Edit

1.0.3

Description edit

1.0.2

Description edit

1.0.1

Description edit

1.0.0