diff --git a/__pycache__/run.cpython-38.pyc b/__pycache__/run.cpython-38.pyc index 1c754bd..2e3cb21 100644 Binary files a/__pycache__/run.cpython-38.pyc and b/__pycache__/run.cpython-38.pyc differ diff --git a/frontend/src/components/DataSpace.vue b/frontend/src/components/DataSpace.vue index 82b1ba9..e6fb05c 100644 --- a/frontend/src/components/DataSpace.vue +++ b/frontend/src/components/DataSpace.vue @@ -42,10 +42,8 @@ export default { var instances = new Array(len); for (var i = 0; i < len; ++i) instances[i] = i instances.sort(function (a, b) { return predictions[a] < predictions[b] ? -1 : predictions[a] > predictions[b] ? 1 : 0; }) - console.log(instances) predictions.sort() - console.log(predictions) var colorInstances = [] for (let i = 0; i < predictions.length; i++) { @@ -113,7 +111,8 @@ export default { var followMe = chart.append("line") .attr("x1", 0).attr("x2", 0) .attr("y1", 0).attr("y2", 400) - .style("stroke", "red") + .style("stroke", "yellow") + .style("stroke-width", '3px') function zoom() { chart.select(".xAxis").call(axis); diff --git a/frontend/src/components/FeatureSpaceDetail.vue b/frontend/src/components/FeatureSpaceDetail.vue index 8a4274d..d8f7ab9 100644 --- a/frontend/src/components/FeatureSpaceDetail.vue +++ b/frontend/src/components/FeatureSpaceDetail.vue @@ -18,7 +18,7 @@ export default { return { dataFS: [], dataFSTrans: [], - quadrantNumber: 5, + quadrantNumber: 4, jsonData: [], corrMatrixComb: [], corrMatrixCombTotal: [], @@ -28,11 +28,127 @@ export default { } }, methods: { + computeOnce () { + var listofNodes = this.dataFS[0] + var dataLocOnce = [] + for (let loop=1; loop<=5; loop++) { + dataLocOnce.push(JSON.parse(this.dataFS[loop+2])) + } + + var pushEach + var oldVal + var newVal + var outcome + var countLoc + + var pushEachFinalFinal = [] + for (let loop=1; loop<=5; loop++) { + var corrMatrixCombLoc =[] + var corrMatrixCombTotalLoc = [] + var VIFRemainingLoc = [] + var MIRemainingLoc = [] + var pushEachFinal = [] + this.dataFSTrans.forEach(function(element, index) { + var round = element.round + round = JSON.parse(round[loop-1]) + oldVal = 0 + newVal = 0 + outcome = 0 + countLoc = 0 + pushEach = [] + Object.entries(round).forEach( + function ([feature, value]) { + var key = Object.keys(value) + var retrieveData = dataLocOnce[loop-1] + var search = Object.values(retrieveData[key]) + oldVal = Math.abs(search[countLoc]) + oldVal + newVal = Math.abs(Object.values(value)[0]) + newVal + countLoc++ + }) + oldVal = oldVal / listofNodes.length + newVal = newVal / listofNodes.length + outcome = oldVal - newVal + pushEach.push({keyIns: "round", valueIns: outcome}) + + var roundLogE = element.roundLogE + roundLogE = JSON.parse(roundLogE[loop-1]) + oldVal = 0 + newVal = 0 + outcome = 0 + countLoc = 0 + Object.entries(roundLogE).forEach( + function ([feature, value]) { + var key = Object.keys(value) + var retrieveData = dataLocOnce[loop-1] + var search = Object.values(retrieveData[key]) + oldVal = Math.abs(search[countLoc]) + oldVal + newVal = Math.abs(Object.values(value)[0]) + newVal + countLoc++ + }) + oldVal = oldVal / listofNodes.length + newVal = newVal / listofNodes.length + outcome = oldVal - newVal + pushEach.push({keyIns: "roundLogE", valueIns: outcome}) + + var roundLog2 = element.roundLog2 + roundLog2 = JSON.parse(roundLog2[loop-1]) + oldVal = 0 + newVal = 0 + outcome = 0 + countLoc = 0 + Object.entries(roundLog2).forEach( + function ([feature, value]) { + var key = Object.keys(value) + var retrieveData = dataLocOnce[loop-1] + var search = Object.values(retrieveData[key]) + oldVal = Math.abs(search[countLoc]) + oldVal + newVal = Math.abs(Object.values(value)[0]) + newVal + countLoc++ + }) + oldVal = oldVal / listofNodes.length + newVal = newVal / listofNodes.length + outcome = oldVal - newVal + pushEach.push({keyIns: "roundLog2", valueIns: outcome}) + + var roundLog10 = element.roundLog10 + roundLog10 = JSON.parse(roundLog10[loop-1]) + oldVal = 0 + newVal = 0 + outcome = 0 + countLoc = 0 + Object.entries(roundLog10).forEach( + function ([feature, value]) { + var key = Object.keys(value) + var retrieveData = dataLocOnce[loop-1] + var search = Object.values(retrieveData[key]) + oldVal = Math.abs(search[countLoc]) + oldVal + newVal = Math.abs(Object.values(value)[0]) + newVal + countLoc++ + }) + oldVal = oldVal / listofNodes.length + newVal = newVal / listofNodes.length + outcome = oldVal - newVal + pushEach.push({keyIns: "roundLog10", valueIns: outcome}) + pushEachFinal.push({key: listofNodes[index], value: pushEach}) + }) + pushEachFinalFinal.push(pushEachFinal) + } + + + EventBus.$emit('overviewCall', pushEachFinalFinal) + + }, initializeNetwork () { + this.corrMatrixComb = [] + this.corrMatrixCombTotal = [] + this.VIFRemaining = [] + this.MIRemaining = [] + var quadrantNumberLocal = this.quadrantNumber var listofNodes = this.dataFS[0] - var dataLoc = JSON.parse(this.dataFS[quadrantNumberLocal+2]) + var dataLoc = JSON.parse(this.dataFS[3+quadrantNumberLocal]) + var pushEachFinal = [] var pushEach var oldVal @@ -47,11 +163,11 @@ export default { this.dataFSTrans.forEach(function(element, index) { var round = element.round - corrMatrixCombLoc.push(Object.values(JSON.parse(round[quadrantNumberLocal*2-1]))) - corrMatrixCombTotalLoc.push(Object.values(JSON.parse(round[quadrantNumberLocal*3-1]))[0] * 100) - VIFRemainingLoc.push(Object.values(JSON.parse(round[quadrantNumberLocal*4-1]))[0]) - MIRemainingLoc.push(JSON.parse(round[quadrantNumberLocal*5-1])) - round = JSON.parse(round[quadrantNumberLocal-1]) + corrMatrixCombLoc.push(Object.values(JSON.parse(round[5+quadrantNumberLocal]))) + corrMatrixCombTotalLoc.push(Object.values(JSON.parse(round[10+quadrantNumberLocal]))[0] * 100) + VIFRemainingLoc.push(Object.values(JSON.parse(round[15+quadrantNumberLocal]))[0]) + MIRemainingLoc.push(JSON.parse(round[20+quadrantNumberLocal])) + round = JSON.parse(round[quadrantNumberLocal]) oldVal = 0 newVal = 0 outcome = 0 @@ -71,11 +187,11 @@ export default { pushEach.push({keyIns: "round", valueIns: outcome}) var roundLogE = element.roundLogE - corrMatrixCombLoc.push(Object.values(JSON.parse(roundLogE[quadrantNumberLocal*2-1]))) - corrMatrixCombTotalLoc.push(Object.values(JSON.parse(roundLogE[quadrantNumberLocal*3-1]))[0] * 100) - VIFRemainingLoc.push(Object.values(JSON.parse(roundLogE[quadrantNumberLocal*4-1]))[0]) - MIRemainingLoc.push(JSON.parse(roundLogE[quadrantNumberLocal*5-1])) - roundLogE = JSON.parse(roundLogE[quadrantNumberLocal-1]) + corrMatrixCombLoc.push(Object.values(JSON.parse(roundLogE[5+quadrantNumberLocal]))) + corrMatrixCombTotalLoc.push(Object.values(JSON.parse(roundLogE[10+quadrantNumberLocal]))[0] * 100) + VIFRemainingLoc.push(Object.values(JSON.parse(roundLogE[15+quadrantNumberLocal]))[0]) + MIRemainingLoc.push(JSON.parse(roundLogE[20+quadrantNumberLocal])) + roundLogE = JSON.parse(roundLogE[quadrantNumberLocal]) oldVal = 0 newVal = 0 outcome = 0 @@ -94,11 +210,11 @@ export default { pushEach.push({keyIns: "roundLogE", valueIns: outcome}) var roundLog2 = element.roundLog2 - corrMatrixCombLoc.push(Object.values(JSON.parse(roundLog2[quadrantNumberLocal*2-1]))) - corrMatrixCombTotalLoc.push(Object.values(JSON.parse(roundLog2[quadrantNumberLocal*3-1]))[0] * 100) - VIFRemainingLoc.push(Object.values(JSON.parse(roundLog2[quadrantNumberLocal*4-1]))[0]) - MIRemainingLoc.push(JSON.parse(roundLog2[quadrantNumberLocal*5-1])) - roundLog2 = JSON.parse(roundLog2[quadrantNumberLocal-1]) + corrMatrixCombLoc.push(Object.values(JSON.parse(roundLog2[5+quadrantNumberLocal]))) + corrMatrixCombTotalLoc.push(Object.values(JSON.parse(roundLog2[10+quadrantNumberLocal]))[0] * 100) + VIFRemainingLoc.push(Object.values(JSON.parse(roundLog2[15+quadrantNumberLocal]))[0]) + MIRemainingLoc.push(JSON.parse(roundLog2[20+quadrantNumberLocal])) + roundLog2 = JSON.parse(roundLog2[quadrantNumberLocal]) oldVal = 0 newVal = 0 outcome = 0 @@ -117,11 +233,11 @@ export default { pushEach.push({keyIns: "roundLog2", valueIns: outcome}) var roundLog10 = element.roundLog10 - corrMatrixCombLoc.push(Object.values(JSON.parse(roundLog10[quadrantNumberLocal*2-1]))) - corrMatrixCombTotalLoc.push(Object.values(JSON.parse(roundLog10[quadrantNumberLocal*3-1]))[0] * 100) - VIFRemainingLoc.push(Object.values(JSON.parse(roundLog10[quadrantNumberLocal*4-1]))[0]) - MIRemainingLoc.push(JSON.parse(roundLog10[quadrantNumberLocal*5-1])) - roundLog10 = JSON.parse(roundLog10[quadrantNumberLocal-1]) + corrMatrixCombLoc.push(Object.values(JSON.parse(roundLog10[5+quadrantNumberLocal]))) + corrMatrixCombTotalLoc.push(Object.values(JSON.parse(roundLog10[10+quadrantNumberLocal]))[0] * 100) + VIFRemainingLoc.push(Object.values(JSON.parse(roundLog10[15+quadrantNumberLocal]))[0]) + MIRemainingLoc.push(JSON.parse(roundLog10[20+quadrantNumberLocal])) + roundLog10 = JSON.parse(roundLog10[quadrantNumberLocal]) oldVal = 0 newVal = 0 outcome = 0 @@ -198,11 +314,12 @@ export default { var computeNodesVar = this.computeNodes var listofNodes = this.dataFS[0] - var corrTarget = JSON.parse(this.dataFS[this.quadrantNumber*2+2]) - var corrGlob = JSON.parse(this.dataFS[this.quadrantNumber*3+2]) - var uniqueTarget = JSON.parse(this.dataFS[this.quadrantNumber*4+2]) - var VIFVar = JSON.parse(this.dataFS[this.quadrantNumber*5+2]) - var MIVar = JSON.parse(this.dataFS[this.quadrantNumber*6+2]) + console.log(this.dataFS) + var corrTarget = JSON.parse(this.dataFS[8+this.quadrantNumber]) + var corrGlob = JSON.parse(this.dataFS[13+this.quadrantNumber]) + var uniqueTarget = JSON.parse(this.dataFS[18+this.quadrantNumber]) + var VIFVar = JSON.parse(this.dataFS[23+this.quadrantNumber]) + var MIVar = JSON.parse(this.dataFS[28+this.quadrantNumber]) MIVar = MIVar.concat(this.MIRemaining) var colorCateg = d3.scaleOrdinal(d3.schemeAccent) @@ -659,8 +776,12 @@ export default { }, }, mounted () { + EventBus.$on('updateSlice', data => { this.quadrantNumber = data }) + EventBus.$on('updateSlice', this.initializeNetwork) + EventBus.$on('quadTrans', data => { this.dataFSTrans = data }) EventBus.$on('quad', data => { this.dataFS = data }) + EventBus.$on('quad', this.computeOnce) EventBus.$on('quad', this.initializeNetwork) EventBus.$on('countNodes1', data => { this.computeNodes = data }) diff --git a/frontend/src/components/FeatureSpaceOverview.vue b/frontend/src/components/FeatureSpaceOverview.vue index 298a600..6300b79 100644 --- a/frontend/src/components/FeatureSpaceOverview.vue +++ b/frontend/src/components/FeatureSpaceOverview.vue @@ -1,41 +1,41 @@