aboutsummaryrefslogtreecommitdiffstats
path: root/Metrics/Metrics-Calculation/metrics_plot/model comparison/src/plot_ks_stats.py
diff options
context:
space:
mode:
Diffstat (limited to 'Metrics/Metrics-Calculation/metrics_plot/model comparison/src/plot_ks_stats.py')
-rw-r--r--Metrics/Metrics-Calculation/metrics_plot/model comparison/src/plot_ks_stats.py36
1 files changed, 23 insertions, 13 deletions
diff --git a/Metrics/Metrics-Calculation/metrics_plot/model comparison/src/plot_ks_stats.py b/Metrics/Metrics-Calculation/metrics_plot/model comparison/src/plot_ks_stats.py
index 1ac7af75..d761ef82 100644
--- a/Metrics/Metrics-Calculation/metrics_plot/model comparison/src/plot_ks_stats.py
+++ b/Metrics/Metrics-Calculation/metrics_plot/model comparison/src/plot_ks_stats.py
@@ -12,26 +12,36 @@ import DistributionMetrics as metrics
12 12
13def main(): 13def main():
14 # read models 14 # read models
15 human = GraphCollection('../input/humanOutput/', 500, 'Human') 15 human = GraphCollection('../input/yakindumm/human_output_100/', 500, 'Human')
16 human_na = GraphCollection('../input/yakindumm/human_output_100/na_rep/', 1, 'Human rep')
17 human_mpc = GraphCollection('../input/yakindumm/human_output_100/mpc_rep/', 1, 'Human rep')
18 human_od = GraphCollection('../input/yakindumm/human_output_100/od_rep/', 1, 'Human rep')
19
20 #viatra75 = GraphCollection('../input/viatra_75/', 500, 'Viatra (75 nodes)')
16 # viatra30 = GraphCollection('../input/viatraOutput30/', 500,'Viatra (30 nodes)') 21 # viatra30 = GraphCollection('../input/viatraOutput30/', 500,'Viatra (30 nodes)')
17 # viatra60 = GraphCollection('../input/viatraOutput60/', 500, 'Viatra (60 nodes)') 22 # viatra60 = GraphCollection('../input/viatraOutput60/', 500, 'Viatra (60 nodes)')
18 viatra100 = GraphCollection('../input/viatraOutput100/', 500, 'Viatra (100 nodes)') 23 # viatra100 = GraphCollection('../input/viatraOutput100/', 500, 'Viatra (100 nodes)')
19 viatra100R = GraphCollection('../input/realisticViatraOutput_container/', 500, 'Realistic Viatra containers (100 nodes)') 24 # viatra100R = GraphCollection('../input/realisticViatraOutput_newMetric/', 500, 'Realistic Viatra (100 nodes)')
20 viatra100C = GraphCollection('../input/viatraOutput100C/', 500, 'Realistic Viatra consistent (100 nodes)') 25 viatra100C = GraphCollection('../input/yakindumm/viatraOutput100C/', 500, 'Viatra consistent (100 nodes)')
21 viatra100EE = GraphCollection('../input/realisticViatra_excludeExit/', 500, 'Realistic Viatra no Exit (100 nodes)') 26 # viatra100EE = GraphCollection('../input/realisticViatra_excludeExit/', 500, 'Realistic Viatra no Exit (100 nodes)')
27 # viatra100EEF = GraphCollection('../input/realisticViatra_excludeExitFinal/', 500, 'Realistic Viatra no Exit Final (100 nodes)')
28 viatra100NT = GraphCollection('../input/yakindumm/realisticVIatraOutput_nodeTypeKS/', 500, 'Realistic Viatra with Node Type KS (100 nodes)')
29
22 # random = GraphCollection('../input/randomOutput/', 500, 'Random') 30 # random = GraphCollection('../input/randomOutput/', 500, 'Random')
23 # alloy = GraphCollection('../input/alloyOutput/', 500, 'Alloy (30 nodes)') 31 # alloy = GraphCollection('../input/alloy/', 500, 'Alloy (30 nodes)')
24 # realistic_viatra = GraphCollection('../input/viatra_output_consistent_100/', 50, 'Realistic Viatra With Some Constraints (100 nodes)') 32 # realistic_viatra = GraphCollection('../input/viatra_output_consistent_100/', 50, 'Realistic Viatra With Some Constraints (100 nodes)')
25 # human100 = GraphCollection('../input/human_output_100/', 304, 'Human') 33 # human100 = GraphCollection('../input/human_output_100/', 304, 'Human')
26 models_to_compare = [human, viatra100EE,viatra100C] 34 models_to_compare_na = [human, human_na, viatra100C,viatra100NT]
35 models_to_compare_mpc = [human, human_mpc ,viatra100C,viatra100NT]
36 models_to_compare_od = [human, human_od, viatra100C,viatra100NT]
27 37
28 # define output folder 38 # define output folder
29 outputFolder = '../output/' 39 outputFolder = '../output/Yakindumm/'
30 40
31 #calculate metrics 41 #calculate metrics
32 metricStat(models_to_compare, 'Node Activity', nodeActivity, 0, outputFolder) 42 metricStat(models_to_compare_na, 'Node Activity', nodeActivity, 0, outputFolder)
33 metricStat(models_to_compare, 'Out Degree', outDegree, 1, outputFolder) 43 metricStat(models_to_compare_od, 'Out Degree', outDegree, 1, outputFolder)
34 metricStat(models_to_compare, 'MPC', mpc, 2, outputFolder) 44 metricStat(models_to_compare_mpc, 'MPC', mpc, 2, outputFolder)
35 45
36def calculateKSMatrix(dists): 46def calculateKSMatrix(dists):
37 dist = [] 47 dist = []
@@ -43,7 +53,7 @@ def calculateKSMatrix(dists):
43 for i in range(len(dist)): 53 for i in range(len(dist)):
44 matrix[i,i] = 0 54 matrix[i,i] = 0
45 for j in range(i+1, len(dist)): 55 for j in range(i+1, len(dist)):
46 value, p = metrics.ks_distance(dist[i], dist[j]) 56 value, p= metrics.ks_distance(dist[i], dist[j])
47 matrix[i, j] = value 57 matrix[i, j] = value
48 matrix[j, i] = value 58 matrix[j, i] = value
49 return matrix 59 return matrix
@@ -55,7 +65,7 @@ def calculateMDS(dissimilarities):
55 return trans 65 return trans
56 66
57def plot(graphTypes, coords, title='',index = 0, savePath = ''): 67def plot(graphTypes, coords, title='',index = 0, savePath = ''):
58 color = ['blue', 'red', 'green', 'yellow'] 68 color = ['blue', 'red', 'yellow', 'green', 'k']
59 plt.figure(index, figsize=(7, 4)) 69 plt.figure(index, figsize=(7, 4))
60 plt.title(title) 70 plt.title(title)
61 index = 0 71 index = 0