質問編集履歴
2
誤字、文の追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
### 発生している問題・エラーメッセージ
|
14
14
|
|
15
|
-
ノードの表示のみでは、ノード位置は固定されるが、エッジを描画するとノード位置が変わ
|
15
|
+
ノードの表示のみでは、ノード位置は固定されるが、エッジを描画するとノード位置が変わってしまいます。
|
16
16
|
|
17
17
|
以下の画像(2枚)は、異なる入力による出力結果になります。この二枚を重ね合わせて比較したいのですが、ノード位置がずれてしまいます。
|
18
18
|
|
@@ -30,6 +30,48 @@
|
|
30
30
|
|
31
31
|
```Python
|
32
32
|
|
33
|
+
import networkx as nx
|
34
|
+
|
35
|
+
from networkx.drawing.nx_pydot import write_dot
|
36
|
+
|
37
|
+
import matplotlib.pyplot as plt
|
38
|
+
|
39
|
+
import numpy as np
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
node_225 = []
|
44
|
+
|
45
|
+
for r in range(225):
|
46
|
+
|
47
|
+
node_225.append(r+1) #ノード用のリスト作成
|
48
|
+
|
49
|
+
|
50
|
+
|
51
|
+
#グラフの作成
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
Graph = nx.DiGraph() #空のグラフを作成
|
56
|
+
|
57
|
+
Graph.add_nodes_from(node_225) #ノード格納
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
pos2 = {
|
64
|
+
|
65
|
+
g+1:(((3840/15)*(g%15)+128),((2160/15)*((int(((225-(g+1))/15)))))+216) #g+1がノード番号
|
66
|
+
|
67
|
+
for g in range(225)
|
68
|
+
|
69
|
+
} #ノードの位置固定したい
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
#描画処理
|
74
|
+
|
33
75
|
plt.figure(dpi = 100,figsize=(38.4,21.6)) #3840*2160の画像出力したい
|
34
76
|
|
35
77
|
|
@@ -38,7 +80,7 @@
|
|
38
80
|
|
39
81
|
edge_labels = {(i, j): w['weight'] for i, j, w in Graph.edges(data=True)} #'weight'っていう文字を削除とedge_labelsの作成
|
40
82
|
|
41
|
-
edge_width = [ d['weight']*1 for (u,v,d) in Graph.edges(data=True)] #設定した重みの値に比例して大きさを設定
|
83
|
+
#edge_width = [ d['weight']*1 for (u,v,d) in Graph.edges(data=True)] #設定した重みの値に比例して大きさを設定
|
42
84
|
|
43
85
|
|
44
86
|
|
@@ -46,7 +88,7 @@
|
|
46
88
|
|
47
89
|
|
48
90
|
|
49
|
-
nx.draw(Graph, with_labels=True,pos=pos2,
|
91
|
+
nx.draw(Graph, with_labels=True,pos=pos2,node_size = node_1_225)#pos2でノード位置固定
|
50
92
|
|
51
93
|
|
52
94
|
|
@@ -58,13 +100,135 @@
|
|
58
100
|
|
59
101
|
|
60
102
|
|
103
|
+
```
|
104
|
+
|
105
|
+
#上の画像のデータ
|
106
|
+
|
107
|
+
node_1_225の中身
|
108
|
+
|
109
|
+
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
110
|
+
|
111
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
112
|
+
|
113
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
114
|
+
|
115
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0,
|
116
|
+
|
117
|
+
0, 0, 0, 37, 3, 88, 378, 200, 599, 0, 0, 0, 0, 0, 0, 0, 0,
|
118
|
+
|
119
|
+
0, 35, 53, 167, 578, 255, 334, 89, 1, 0, 0, 0, 0, 0, 0, 1,
|
120
|
+
|
121
|
+
391, 30, 283, 1496, 450, 112, 4, 1, 0, 0, 0, 0, 0, 0, 0, 386,
|
122
|
+
|
123
|
+
5, 59, 269, 128, 34, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 375, 43,
|
124
|
+
|
125
|
+
4, 4, 23, 2, 0, 0, 0, 0, 0, 0, 0, 0, 61, 64, 3, 1, 24, 30, 17,
|
126
|
+
|
127
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
128
|
+
|
129
|
+
0, 0, 0, 81, 13, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 27, 3,
|
130
|
+
|
131
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 14, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0]
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
|
136
|
+
|
137
|
+
omomi_allの中身
|
138
|
+
|
139
|
+
[エッジの始点ノード,終点ノード,重み]
|
140
|
+
|
141
|
+
[[202, 187, 0.1], [187, 202, 0.1], [201, 202, 0.1], [188, 187, 0.1], [214, 215, 0.1], [215, 214, 0.1],
|
142
|
+
|
143
|
+
[114, 130, 3.5], [99, 84, 0.1], [100, 114, 0.25], [115, 114, 0.25], [84, 83, 0.1], [98, 113, 0.25],
|
144
|
+
|
145
|
+
[85, 100, 0.1], [97, 112, 0.25], [83, 84, 0.1], [113, 128, 0.5], [112, 97, 0.25], [109, 112, 0.1],
|
146
|
+
|
147
|
+
[116, 114, 0.1], [111, 112, 0.1], [127, 142, 0.1], [156, 142, 0.1], [157, 142, 0.1], [172, 142, 0.1],
|
148
|
+
|
149
|
+
[142, 127, 0.25], [125, 126, 0.1], [110, 112, 0.1], [67, 188, 0.1], [143, 144, 0.1], [129, 144, 0.25],
|
150
|
+
|
151
|
+
[130, 115, 0.1], [95, 80, 0.1], [80, 110, 0.1], [96, 111, 0.1], [82, 83, 0.1], [131, 101, 0.1],
|
152
|
+
|
153
|
+
[101, 116, 0.1], [128, 113, 0.5], [189, 217, 0.1], [217, 203, 0.1], [203, 158, 0.1], [158, 143, 0.1],
|
154
|
+
|
155
|
+
[159, 144, 0.1], [173, 220, 0.1], [220, 112, 0.1], [218, 158, 0.1], [144, 129, 0.25], [145, 160, 0.1],
|
156
|
+
|
157
|
+
[146, 145, 0.1], [161, 146, 0.1], [160, 145, 0.1], [147, 162, 0.1], [162, 161, 0.1], [141, 142, 0.1],
|
158
|
+
|
159
|
+
[126, 127, 0.1], [117, 100, 0.1], [69, 68, 0.1], [68, 83, 0.1], [102, 100, 0.1], [81, 82, 0.1]]
|
160
|
+
|
161
|
+
```
|
162
|
+
|
163
|
+
```
|
164
|
+
|
165
|
+
#下の画像のデータ
|
166
|
+
|
167
|
+
node_1_225の中身
|
168
|
+
|
169
|
+
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
170
|
+
|
171
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
172
|
+
|
173
|
+
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 18, 0, 0, 0, 0,
|
174
|
+
|
175
|
+
0, 0, 0, 0, 0, 0, 0, 0, 6, 8, 31, 3, 1, 0, 0, 0, 0, 0, 0,
|
176
|
+
|
177
|
+
0, 0, 1, 0, 141, 124, 269, 504, 15, 2, 0, 0, 0, 0, 0, 0, 0,
|
178
|
+
|
179
|
+
1, 4, 2034, 61, 2013, 464, 126, 2, 1, 0, 0, 0, 0, 0, 0, 0,
|
180
|
+
|
181
|
+
143, 2039, 354, 1421, 385, 105, 145, 1, 0, 0, 0, 0, 0, 0, 0,
|
182
|
+
|
183
|
+
1, 137, 133, 472, 114, 40, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 22,
|
184
|
+
|
185
|
+
394, 2, 6, 21, 2, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 3, 6, 2, 23,
|
186
|
+
|
187
|
+
41, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 5, 6, 3, 0, 0, 0,
|
188
|
+
|
189
|
+
0, 0, 0, 0, 0, 0, 1, 37, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
190
|
+
|
191
|
+
0, 0, 0, 0, 58, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
192
|
+
|
193
|
+
|
194
|
+
|
195
|
+
omomi_allの中身
|
196
|
+
|
197
|
+
[エッジの始点ノード,終点ノード,重み]
|
198
|
+
|
199
|
+
[[97, 96, 0.1], [82, 83, 0.1], [112, 113, 1.5], [113, 128, 0.5], [98, 114, 0.5], [96, 97, 0.1],
|
200
|
+
|
201
|
+
[111, 112, 0.25], [114, 98, 0.5], [99, 114, 0.5], [84, 114, 0.1], [115, 114, 0.1], [100, 99, 0.1],
|
202
|
+
|
203
|
+
[130, 115, 0.1], [129, 114, 0.1], [81, 82, 0.1], [95, 112, 0.1], [128, 112, 0.5], [127, 126, 0.5],
|
204
|
+
|
205
|
+
[94, 111, 0.1], [126, 112, 0.5], [110, 112, 0.1], [125, 112, 0.1], [204, 189, 0.1], [205, 204, 0.1],
|
206
|
+
|
207
|
+
[189, 204, 0.1], [188, 187, 0.1], [187, 188, 0.1], [116, 101, 0.1], [101, 117, 0.1], [117, 116, 0.1],
|
208
|
+
|
209
|
+
[102, 116, 0.1], [159, 160, 0.1], [144, 159, 0.1], [143, 144, 0.1], [142, 127, 0.25], [141, 142, 0.1],
|
210
|
+
|
211
|
+
[156, 141, 0.1], [157, 143, 0.1], [173, 158, 0.1], [158, 143, 0.1], [140, 142, 0.1], [155, 142, 0.1],
|
212
|
+
|
213
|
+
[145, 144, 0.1], [160, 144, 0.1], [161, 176, 0.1], [146, 161, 0.1], [176, 177, 0.1], [177, 161, 0.1],
|
214
|
+
|
215
|
+
[175, 159, 0.1], [162, 161, 0.1], [132, 130, 0.1], [131, 130, 0.1], [83, 98, 0.25], [68, 53, 0.1],
|
216
|
+
|
217
|
+
[69, 83, 0.1], [70, 81, 0.1], [86, 85, 0.1], [85, 84, 0.1], [53, 68, 0.1], [52, 53, 0.1], [67, 66, 0.1],
|
218
|
+
|
219
|
+
[66, 81, 0.1], [79, 82, 0.1]]
|
220
|
+
|
221
|
+
|
222
|
+
|
223
|
+
```
|
224
|
+
|
61
225
|
### 試したこと
|
62
226
|
|
63
227
|
|
64
228
|
|
65
229
|
該当エラーに関する記事を調べたが、出てこなかった。
|
66
230
|
|
67
|
-
ノード間距離の調整を試みたが
|
231
|
+
ノード間距離の調整を試みたが、出来なかった。
|
68
232
|
|
69
233
|
### 補足情報(FW/ツールのバージョンなど)
|
70
234
|
|
1
文の追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
### 前提・実現したいこと
|
2
2
|
|
3
|
-
|
3
|
+
初めて、質問させて頂きます。
|
4
4
|
|
5
5
|
現在、PythonのNetworkxを用いて、ネットワークグラフを作成しています。
|
6
6
|
|
@@ -15,6 +15,8 @@
|
|
15
15
|
ノードの表示のみでは、ノード位置は固定されるが、エッジを描画するとノード位置が変わる。
|
16
16
|
|
17
17
|
以下の画像(2枚)は、異なる入力による出力結果になります。この二枚を重ね合わせて比較したいのですが、ノード位置がずれてしまいます。
|
18
|
+
|
19
|
+
恐らく、エッジ表示によるノード間距離が変わってしまうのが、原因だと思ってますが、解決策が思いつきません。
|
18
20
|
|
19
21
|
プログラム上では、ノードの位置を固定していて、エッジ表示をやめたらノード位置が固定され、重ね合わせて比較できます。
|
20
22
|
|
@@ -62,7 +64,7 @@
|
|
62
64
|
|
63
65
|
該当エラーに関する記事を調べたが、出てこなかった。
|
64
66
|
|
65
|
-
|
67
|
+
ノード間距離の調整を試みたが。出来なかった。
|
66
68
|
|
67
69
|
### 補足情報(FW/ツールのバージョンなど)
|
68
70
|
|