Skip to content

Commit 669dc1f

Browse files
committed
renaming plot function
1 parent 56dbac8 commit 669dc1f

File tree

9 files changed

+221
-215
lines changed

9 files changed

+221
-215
lines changed

GenNet.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ def main(args):
121121
parser_plot.add_argument(
122122
"-type",
123123
type=str,
124-
choices=['layer_weight', 'sunburst', 'raw_importance'],
124+
choices=['layer_weight', 'sunburst', 'manhattan_relative_importance'],
125125
)
126126
parser_plot.add_argument(
127127
"-layer_n",

GenNet_utils/Create_plots.py

+18-12
Original file line numberDiff line numberDiff line change
@@ -71,13 +71,18 @@ def plot_layer_weight(resultpath, importance_csv, layer=0, num_annotated=10):
7171
if 'chr' in csv_file.columns:
7272
columns = ["node_layer_" + str(layer), "node_layer_" + str(layer + 1), "weights_" + str(layer),
7373
'layer' + str(layer) + '_name', 'layer' + str(layer + 1) + '_name', 'chr']
74+
csv_file = csv_file[columns]
75+
csv_file = csv_file.drop_duplicates()
76+
77+
csv_file = csv_file.sort_values(by=['chr', 'node_layer_' + str(layer)], ascending=True)
7478
else:
7579
columns = ["node_layer_" + str(layer), "node_layer_" + str(layer + 1), "weights_" + str(layer),
7680
'layer' + str(layer) + '_name', 'layer' + str(layer + 1) + '_name']
77-
csv_file = csv_file[columns]
78-
csv_file = csv_file.drop_duplicates()
81+
csv_file = csv_file[columns]
82+
csv_file = csv_file.drop_duplicates()
83+
84+
csv_file = csv_file.sort_values(by=['node_layer_' + str(layer)], ascending=True)
7985

80-
csv_file = csv_file.sort_values(by=['chr', 'node_layer_' + str(layer)], ascending=True)
8186
csv_file["pos"] = np.arange(len(csv_file))
8287
weights = abs(csv_file["weights_" + str(layer)].values)
8388
weights = weights / max(weights)
@@ -150,23 +155,24 @@ def plot_layer_weight(resultpath, importance_csv, layer=0, num_annotated=10):
150155
plt.savefig(resultpath + "Weights_layer_" + str(layer) + ".png", bbox_inches='tight', pad_inches=0)
151156

152157

153-
def manhattan_importance(resultpath, importance_csv, num_annotated=10):
154-
# ToDO compute importance based on all layers
158+
def manhattan_relative_importance(resultpath, importance_csv, num_annotated=10):
155159
csv_file = importance_csv.copy()
156160
plt.figure(figsize=(20, 10))
157161

158162
gene_middle = []
159163

160-
csv_file = csv_file.sort_values(by=['chr', 'node_layer_0'], ascending=True)
161-
csv_file["pos"] = np.arange(len(csv_file))
162164

163165
if "chr" in csv_file.columns:
166+
csv_file = csv_file.sort_values(by=['chr', 'node_layer_0'], ascending=True)
167+
csv_file["pos"] = np.arange(len(csv_file))
164168
color_end = np.sort(csv_file.groupby("chr")["pos"].max().values)
165169
print('coloring per chromosome')
166170
color_end = np.insert(color_end, 0, 0)
167171
for i in range(len(color_end) - 1):
168172
gene_middle.append((color_end[i] + color_end[i + 1]) / 2)
169173
else:
174+
csv_file = csv_file.sort_values(by=['node_layer_0'], ascending=True)
175+
csv_file["pos"] = np.arange(len(csv_file))
170176
color_end = np.sort(csv_file.groupby("node_layer_1")["pos"].max().values)
171177
color_end = np.insert(color_end, 0, 0)
172178
print("no chr information continuing by coloring per group in node_layer_1")
@@ -184,13 +190,13 @@ def manhattan_importance(resultpath, importance_csv, num_annotated=10):
184190

185191
plt.ylim(bottom=0, top=1.2)
186192
plt.xlim(0, len(weights) + int(len(weights) / 100))
187-
plt.title("Node importance", size=36)
193+
plt.title("Relative importance of all SNPs", size=36)
188194
if len(gene_middle) > 1:
189195
plt.xticks(gene_middle, np.arange(len(gene_middle)) + 1, size=16)
190196
plt.xlabel("Chromosome", size=18)
191197
else:
192198
plt.xlabel("Chromosome position", size=18)
193-
plt.ylabel("Weights", size=18)
199+
plt.ylabel("Relative importance", size=18)
194200

195201
offset = len(csv_file) / 200
196202
offset = np.clip(offset, 0.1, 100)
@@ -208,7 +214,7 @@ def manhattan_importance(resultpath, importance_csv, num_annotated=10):
208214
plt.gca().spines['right'].set_color('none')
209215
plt.gca().spines['top'].set_color('none')
210216

211-
plt.savefig(resultpath + "Importance_manhattan_plot.png", bbox_inches='tight', pad_inches=0)
217+
plt.savefig(resultpath + "Manhattan_relative_importance_SNPs.png", bbox_inches='tight', pad_inches=0)
212218
plt.show()
213219

214220

@@ -221,8 +227,8 @@ def plot(args):
221227
plot_layer_weight(resultpath, importance_csv, layer=layer, num_annotated=10)
222228
elif args.type == "sunburst":
223229
sunburst_plot(resultpath=resultpath, importance_csv=importance_csv)
224-
elif args.type == "raw_importance":
225-
manhattan_importance(resultpath=resultpath, importance_csv=importance_csv)
230+
elif args.type == "manhattan_relative_importance":
231+
manhattan_relative_importance(resultpath=resultpath, importance_csv=importance_csv)
226232
else:
227233
print("invalid type:", args.type)
228234
exit()
+101-101
Original file line numberDiff line numberDiff line change
@@ -1,101 +1,101 @@
1-
layer0_node,layer0_name,layer1_node,layer1_name,layer2_node,layer2_name
2-
0 ,SNP0 ,0 ,HERC2 ,0 ,Causal_path
3-
1 ,SNP1 ,0 ,HERC2 ,0 ,Causal_path
4-
2 ,SNP2 ,0 ,HERC2 ,0 ,Causal_path
5-
3 ,SNP3 ,0 ,HERC2 ,0 ,Causal_path
6-
4 ,SNP4 ,0 ,HERC2 ,0 ,Causal_path
7-
5 ,SNP5 ,1 ,BRCA2 ,0 ,Causal_path
8-
6 ,SNP6 ,1 ,BRCA2 ,0 ,Causal_path
9-
7 ,SNP7 ,1 ,BRCA2 ,0 ,Causal_path
10-
8 ,SNP8 ,1 ,BRCA2 ,0 ,Causal_path
11-
9 ,SNP9 ,1 ,BRCA2 ,0 ,Causal_path
12-
10 ,SNP10 ,2 ,ApoE ,0 ,Causal_path
13-
11 ,SNP11 ,2 ,ApoE ,0 ,Causal_path
14-
12 ,SNP12 ,2 ,ApoE ,0 ,Causal_path
15-
13 ,SNP13 ,2 ,ApoE ,0 ,Causal_path
16-
14 ,SNP14 ,2 ,ApoE ,0 ,Causal_path
17-
15 ,SNP15 ,2 ,ApoE ,0 ,Causal_path
18-
16 ,SNP16 ,2 ,ApoE ,0 ,Causal_path
19-
17 ,SNP17 ,2 ,ApoE ,0 ,Causal_path
20-
18 ,SNP18 ,2 ,ApoE ,0 ,Causal_path
21-
19 ,SNP19 ,2 ,ApoE ,0 ,Causal_path
22-
20 ,SNP20 ,3 ,NRG ,0 ,Causal_path
23-
21 ,SNP21 ,3 ,NRG ,0 ,Causal_path
24-
22 ,SNP22 ,3 ,NRG ,0 ,Causal_path
25-
23 ,SNP23 ,3 ,NRG ,0 ,Causal_path
26-
24 ,SNP24 ,3 ,NRG ,0 ,Causal_path
27-
25 ,SNP25 ,3 ,NRG ,0 ,Causal_path
28-
26 ,SNP26 ,3 ,NRG ,0 ,Causal_path
29-
27 ,SNP27 ,3 ,NRG ,0 ,Causal_path
30-
28 ,SNP28 ,3 ,NRG ,0 ,Causal_path
31-
29 ,SNP29 ,3 ,NRG ,0 ,Causal_path
32-
30 ,SNP30 ,4 ,RGS-4 ,0 ,Causal_path
33-
31 ,SNP31 ,4 ,RGS-4 ,0 ,Causal_path
34-
32 ,SNP32 ,4 ,RGS-4 ,0 ,Causal_path
35-
33 ,SNP33 ,4 ,RGS-4 ,0 ,Causal_path
36-
34 ,SNP34 ,4 ,RGS-4 ,0 ,Causal_path
37-
35 ,SNP35 ,4 ,RGS-4 ,0 ,Causal_path
38-
36 ,SNP36 ,4 ,RGS-4 ,0 ,Causal_path
39-
37 ,SNP37 ,4 ,RGS-4 ,0 ,Causal_path
40-
38 ,SNP38 ,4 ,RGS-4 ,0 ,Causal_path
41-
39 ,SNP39 ,4 ,RGS-4 ,0 ,Causal_path
42-
40 ,SNP40 ,4 ,RGS-4 ,0 ,Causal_path
43-
41 ,SNP41 ,4 ,RGS-4 ,0 ,Causal_path
44-
42 ,SNP42 ,4 ,RGS-4 ,0 ,Causal_path
45-
43 ,SNP43 ,4 ,RGS-4 ,0 ,Causal_path
46-
44 ,SNP44 ,4 ,RGS-4 ,0 ,Causal_path
47-
45 ,SNP45 ,4 ,RGS-4 ,0 ,Causal_path
48-
46 ,SNP46 ,4 ,RGS-4 ,0 ,Causal_path
49-
47 ,SNP47 ,4 ,RGS-4 ,0 ,Causal_path
50-
48 ,SNP48 ,4 ,RGS-4 ,0 ,Causal_path
51-
49 ,SNP49 ,4 ,RGS-4 ,0 ,Causal_path
52-
50 ,SNP50 ,5 ,VEGFA ,1 ,Control_path
53-
51 ,SNP51 ,5 ,VEGFA ,1 ,Control_path
54-
52 ,SNP52 ,5 ,VEGFA ,1 ,Control_path
55-
53 ,SNP53 ,5 ,VEGFA ,1 ,Control_path
56-
54 ,SNP54 ,5 ,VEGFA ,1 ,Control_path
57-
55 ,SNP55 ,5 ,VEGFA ,1 ,Control_path
58-
56 ,SNP56 ,5 ,VEGFA ,1 ,Control_path
59-
57 ,SNP57 ,5 ,VEGFA ,1 ,Control_path
60-
58 ,SNP58 ,5 ,VEGFA ,1 ,Control_path
61-
59 ,SNP59 ,5 ,VEGFA ,1 ,Control_path
62-
60 ,SNP60 ,5 ,VEGFA ,1 ,Control_path
63-
61 ,SNP61 ,5 ,VEGFA ,1 ,Control_path
64-
62 ,SNP62 ,5 ,VEGFA ,1 ,Control_path
65-
63 ,SNP63 ,5 ,VEGFA ,1 ,Control_path
66-
64 ,SNP64 ,5 ,VEGFA ,1 ,Control_path
67-
65 ,SNP65 ,5 ,VEGFA ,1 ,Control_path
68-
66 ,SNP66 ,5 ,VEGFA ,1 ,Control_path
69-
67 ,SNP67 ,5 ,VEGFA ,1 ,Control_path
70-
68 ,SNP68 ,5 ,VEGFA ,1 ,Control_path
71-
69 ,SNP69 ,5 ,VEGFA ,1 ,Control_path
72-
70 ,SNP70 ,6 ,EGFR ,1 ,Control_path
73-
71 ,SNP71 ,6 ,EGFR ,1 ,Control_path
74-
72 ,SNP72 ,6 ,EGFR ,1 ,Control_path
75-
73 ,SNP73 ,6 ,EGFR ,1 ,Control_path
76-
74 ,SNP74 ,6 ,EGFR ,1 ,Control_path
77-
75 ,SNP75 ,6 ,EGFR ,1 ,Control_path
78-
76 ,SNP76 ,6 ,EGFR ,1 ,Control_path
79-
77 ,SNP77 ,6 ,EGFR ,1 ,Control_path
80-
78 ,SNP78 ,6 ,EGFR ,1 ,Control_path
81-
79 ,SNP79 ,6 ,EGFR ,1 ,Control_path
82-
80 ,SNP80 ,7 ,TGFBI ,1 ,Control_path
83-
81 ,SNP81 ,7 ,TGFBI ,1 ,Control_path
84-
82 ,SNP82 ,7 ,TGFBI ,1 ,Control_path
85-
83 ,SNP83 ,7 ,TGFBI ,1 ,Control_path
86-
84 ,SNP84 ,7 ,TGFBI ,1 ,Control_path
87-
85 ,SNP85 ,7 ,TGFBI ,1 ,Control_path
88-
86 ,SNP86 ,7 ,TGFBI ,1 ,Control_path
89-
87 ,SNP87 ,7 ,TGFBI ,1 ,Control_path
90-
88 ,SNP88 ,7 ,TGFBI ,1 ,Control_path
91-
89 ,SNP89 ,7 ,TGFBI ,1 ,Control_path
92-
90 ,SNP90 ,8 ,TNF ,1 ,Control_path
93-
91 ,SNP91 ,8 ,TNF ,1 ,Control_path
94-
92 ,SNP92 ,8 ,TNF ,1 ,Control_path
95-
93 ,SNP93 ,8 ,TNF ,1 ,Control_path
96-
94 ,SNP94 ,8 ,TNF ,1 ,Control_path
97-
95 ,SNP95 ,9 ,IL6 ,1 ,Control_path
98-
96 ,SNP96 ,9 ,IL6 ,1 ,Control_path
99-
97 ,SNP97 ,9 ,IL6 ,1 ,Control_path
100-
98 ,SNP98 ,9 ,IL6 ,1 ,Control_path
101-
99 ,SNP99 ,9 ,IL6 ,1 ,Control_path
1+
chr,layer0_node,layer0_name,layer1_node,layer1_name,layer2_node,layer2_name
2+
0,0,SNP0 ,0,HERC2 ,0,Causal_path
3+
0,1,SNP1 ,0,HERC2 ,0,Causal_path
4+
0,2,SNP2 ,0,HERC2 ,0,Causal_path
5+
0,3,SNP3 ,0,HERC2 ,0,Causal_path
6+
0,4,SNP4 ,0,HERC2 ,0,Causal_path
7+
1,5,SNP5 ,1,BRCA2 ,0,Causal_path
8+
1,6,SNP6 ,1,BRCA2 ,0,Causal_path
9+
1,7,SNP7 ,1,BRCA2 ,0,Causal_path
10+
1,8,SNP8 ,1,BRCA2 ,0,Causal_path
11+
1,9,SNP9 ,1,BRCA2 ,0,Causal_path
12+
2,10,SNP10 ,2,ApoE ,0,Causal_path
13+
2,11,SNP11 ,2,ApoE ,0,Causal_path
14+
2,12,SNP12 ,2,ApoE ,0,Causal_path
15+
2,13,SNP13 ,2,ApoE ,0,Causal_path
16+
2,14,SNP14 ,2,ApoE ,0,Causal_path
17+
2,15,SNP15 ,2,ApoE ,0,Causal_path
18+
2,16,SNP16 ,2,ApoE ,0,Causal_path
19+
2,17,SNP17 ,2,ApoE ,0,Causal_path
20+
2,18,SNP18 ,2,ApoE ,0,Causal_path
21+
2,19,SNP19 ,2,ApoE ,0,Causal_path
22+
3,20,SNP20 ,3,NRG ,0,Causal_path
23+
3,21,SNP21 ,3,NRG ,0,Causal_path
24+
3,22,SNP22 ,3,NRG ,0,Causal_path
25+
3,23,SNP23 ,3,NRG ,0,Causal_path
26+
3,24,SNP24 ,3,NRG ,0,Causal_path
27+
3,25,SNP25 ,3,NRG ,0,Causal_path
28+
3,26,SNP26 ,3,NRG ,0,Causal_path
29+
3,27,SNP27 ,3,NRG ,0,Causal_path
30+
3,28,SNP28 ,3,NRG ,0,Causal_path
31+
3,29,SNP29 ,3,NRG ,0,Causal_path
32+
4,30,SNP30 ,4,RGS-4 ,0,Causal_path
33+
4,31,SNP31 ,4,RGS-4 ,0,Causal_path
34+
4,32,SNP32 ,4,RGS-4 ,0,Causal_path
35+
4,33,SNP33 ,4,RGS-4 ,0,Causal_path
36+
4,34,SNP34 ,4,RGS-4 ,0,Causal_path
37+
4,35,SNP35 ,4,RGS-4 ,0,Causal_path
38+
4,36,SNP36 ,4,RGS-4 ,0,Causal_path
39+
4,37,SNP37 ,4,RGS-4 ,0,Causal_path
40+
4,38,SNP38 ,4,RGS-4 ,0,Causal_path
41+
4,39,SNP39 ,4,RGS-4 ,0,Causal_path
42+
4,40,SNP40 ,4,RGS-4 ,0,Causal_path
43+
4,41,SNP41 ,4,RGS-4 ,0,Causal_path
44+
4,42,SNP42 ,4,RGS-4 ,0,Causal_path
45+
4,43,SNP43 ,4,RGS-4 ,0,Causal_path
46+
4,44,SNP44 ,4,RGS-4 ,0,Causal_path
47+
4,45,SNP45 ,4,RGS-4 ,0,Causal_path
48+
4,46,SNP46 ,4,RGS-4 ,0,Causal_path
49+
4,47,SNP47 ,4,RGS-4 ,0,Causal_path
50+
4,48,SNP48 ,4,RGS-4 ,0,Causal_path
51+
4,49,SNP49 ,4,RGS-4 ,0,Causal_path
52+
5,50,SNP50 ,5,VEGFA ,1,Control_path
53+
5,51,SNP51 ,5,VEGFA ,1,Control_path
54+
5,52,SNP52 ,5,VEGFA ,1,Control_path
55+
5,53,SNP53 ,5,VEGFA ,1,Control_path
56+
5,54,SNP54 ,5,VEGFA ,1,Control_path
57+
5,55,SNP55 ,5,VEGFA ,1,Control_path
58+
5,56,SNP56 ,5,VEGFA ,1,Control_path
59+
5,57,SNP57 ,5,VEGFA ,1,Control_path
60+
5,58,SNP58 ,5,VEGFA ,1,Control_path
61+
5,59,SNP59 ,5,VEGFA ,1,Control_path
62+
5,60,SNP60 ,5,VEGFA ,1,Control_path
63+
5,61,SNP61 ,5,VEGFA ,1,Control_path
64+
5,62,SNP62 ,5,VEGFA ,1,Control_path
65+
5,63,SNP63 ,5,VEGFA ,1,Control_path
66+
5,64,SNP64 ,5,VEGFA ,1,Control_path
67+
5,65,SNP65 ,5,VEGFA ,1,Control_path
68+
5,66,SNP66 ,5,VEGFA ,1,Control_path
69+
5,67,SNP67 ,5,VEGFA ,1,Control_path
70+
5,68,SNP68 ,5,VEGFA ,1,Control_path
71+
5,69,SNP69 ,5,VEGFA ,1,Control_path
72+
6,70,SNP70 ,6,EGFR ,1,Control_path
73+
6,71,SNP71 ,6,EGFR ,1,Control_path
74+
6,72,SNP72 ,6,EGFR ,1,Control_path
75+
6,73,SNP73 ,6,EGFR ,1,Control_path
76+
6,74,SNP74 ,6,EGFR ,1,Control_path
77+
6,75,SNP75 ,6,EGFR ,1,Control_path
78+
6,76,SNP76 ,6,EGFR ,1,Control_path
79+
6,77,SNP77 ,6,EGFR ,1,Control_path
80+
6,78,SNP78 ,6,EGFR ,1,Control_path
81+
6,79,SNP79 ,6,EGFR ,1,Control_path
82+
7,80,SNP80 ,7,TGFBI ,1,Control_path
83+
7,81,SNP81 ,7,TGFBI ,1,Control_path
84+
7,82,SNP82 ,7,TGFBI ,1,Control_path
85+
7,83,SNP83 ,7,TGFBI ,1,Control_path
86+
7,84,SNP84 ,7,TGFBI ,1,Control_path
87+
7,85,SNP85 ,7,TGFBI ,1,Control_path
88+
7,86,SNP86 ,7,TGFBI ,1,Control_path
89+
7,87,SNP87 ,7,TGFBI ,1,Control_path
90+
7,88,SNP88 ,7,TGFBI ,1,Control_path
91+
7,89,SNP89 ,7,TGFBI ,1,Control_path
92+
8,90,SNP90 ,8,TNF ,1,Control_path
93+
8,91,SNP91 ,8,TNF ,1,Control_path
94+
8,92,SNP92 ,8,TNF ,1,Control_path
95+
8,93,SNP93 ,8,TNF ,1,Control_path
96+
8,94,SNP94 ,8,TNF ,1,Control_path
97+
9,95,SNP95 ,9,IL6 ,1,Control_path
98+
9,96,SNP96 ,9,IL6 ,1,Control_path
99+
9,97,SNP97 ,9,IL6 ,1,Control_path
100+
9,98,SNP98 ,9,IL6 ,1,Control_path
101+
9,99,SNP99 ,9,IL6 ,1,Control_path

0 commit comments

Comments
 (0)