Borrar filtros
Borrar filtros

How to link two matrix, node's coordinate and lines between nodes?

1 visualización (últimos 30 días)
Danilo Sanfilippo
Danilo Sanfilippo el 22 de Jul. de 2019
Respondida: Steven Lord el 22 de Jul. de 2019
I have imported two matrix from Gmsh into matlab.
One matrix (3x45) provides to me the coordinates of nodes, the second (2x136) provides to me the connections between nodes.
The problem is that I know that each number of the second matrix is a nodes but for matlab are just two matrix with randon number.
How can i say to matlab that each nodes are the coordinates storage in the first matrix?
Example:
the first row of Line matrix is 1 17 and I would like to code in matlab 1 and 17 correspond with first and 17th row of Nodes matrix
Nodes =
1 0 0 0
2 5 0 0
3 5 5 0
4 0 5 0
5 0.999999999998413 5 0
6 1.99999999999551 5 0
7 2.99999999999697 5 0
8 3.99999999999849 5 0
9 5 4.00000000000000 0
10 5 3.00000000000000 0
11 5 1.99999999999999 0
12 5 0.999999999999991 0
13 4.00000000000000 0 0
14 3.00000000000000 0 0
15 1.99999999999999 0 0
16 0.999999999999991 0 0
17 0 0.999999999998413 0
18 0 1.99999999999551 0
19 0 2.99999999999697 0
20 0 3.99999999999849 0
21 2.50000000000036 2.50000000000001 0
22 1.43749999999957 1.43750000000026 0
23 1.43750000000081 3.56250000000055 0
24 3.56250000000014 1.43749999999987 0
25 3.56250000000025 3.56249999999959 0
26 2.55163043478259 1.01967773437503 0
27 3.98032226562521 2.55163043478244 0
28 1.01967773437521 2.44836956521634 0
29 2.44836956521649 3.98032226562503 0
30 0.835416666666811 0.835416666666551 0
31 0.835416666666499 4.16458333333299 0
32 4.17768912837252 0.822310871627482 0
33 4.16458333333322 4.16458333333347 0
34 2.15172155753807 1.84171674372294 0
35 1.91602312080068 2.87764584152284 0
36 3.15726153869470 2.15517014158528 0
37 2.87711830552300 3.08476478749167 0
38 0.658518880208503 3.43509057970907 0
39 1.56490942028979 0.658518880208368 0
40 3.43509057970908 4.34148111979162 0
41 0.662502325148937 1.56031395574398 0
42 3.45836391263105 0.655897721200476 0
43 4.34410227879957 1.56228826128196 0
44 1.56031395574401 4.33749767485115 0
45 4.33749767485133 3.43968604425469 0
Lines=
1 17
1 30
2 13
2 32
3 9
3 33
4 5
4 31
5 6
5 31
5 44
6 7
6 29
6 44
7 8
7 29
7 40
8 3
8 33
8 40
9 10
9 33
9 45
10 11
10 27
10 45
11 12
11 27
11 43
12 2
12 32
12 43
13 14
13 32
13 42
14 15
14 26
14 42
15 16
15 26
15 39
16 1
16 30
16 39
17 18
17 30
17 41
18 19
18 28
18 41
19 20
19 28
19 38
20 4
20 31
20 38
21 34
21 35
21 36
21 37
22 26
22 28
22 30
22 34
22 39
22 41
23 28
23 29
23 31
23 35
23 38
23 44
24 26
24 27
24 32
24 36
24 42
24 43
25 27
25 29
25 33
25 37
25 40
25 45
26 15
26 22
26 24
26 34
26 36
26 39
26 42
27 11
27 24
27 25
27 36
27 37
27 43
27 45
28 19
28 22
28 23
28 34
28 35
28 38
28 41
29 7
29 23
29 25
29 35
29 37
29 40
29 44
30 17
30 22
30 39
30 41
31 5
31 23
31 38
31 44
32 13
32 24
32 42
32 43
33 9
33 25
33 40
33 45
34 21
34 28
34 35
34 36
35 29
35 37
36 21
36 37

Respuestas (1)

Steven Lord
Steven Lord el 22 de Jul. de 2019
Make a graph or digraph (depending whether your network is undirected or directed) object. You can store your coordinates as custom attributes in the Nodes table of the graph or digraph then use that data as the XData, YData, and ZData when you plot it. See the "Custom Graph Node Coordinates" example on the plot documentation page for a demonstration of this technique.

Categorías

Más información sobre Graph and Network Algorithms en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by