parent 0b87a162b2
commit c6b2705bf3
  1. BIN
      __pycache__/run.cpython-38.pyc
  2. 5
      frontend/src/components/FeatureSpaceDetail.vue
  3. 64
      frontend/src/components/FeatureSpaceOverview.vue
  4. 2
      frontend/src/components/Heatmap.vue
  5. 9
      frontend/src/components/Main.vue
  6. 36
      frontend/src/components/Results.vue
  7. 25
      run.py

Binary file not shown.

@ -97,7 +97,7 @@ export default {
this.mode = 0 this.mode = 0
this.KeepIDs = [] this.KeepIDs = []
this.keepNumberOfCompareNodes = 0 this.keepNumberOfCompareNodes = 0
this.graphVizualization() //this.graphVizualization()
EventBus.$emit('storeGeneration') EventBus.$emit('storeGeneration')
}, },
setLayerCompare() { setLayerCompare() {
@ -508,7 +508,6 @@ export default {
var MIMin = min(MIVar) var MIMin = min(MIVar)
var MIMax = max(MIVar) var MIMax = max(MIVar)
MIVar = MIVar.map(normalize(MIMin, MIMax)) MIVar = MIVar.map(normalize(MIMin, MIMax))
var colorsScaleNodes = d3.scaleOrdinal() var colorsScaleNodes = d3.scaleOrdinal()
@ -1507,7 +1506,7 @@ export default {
document.getElementById("initButton").click() document.getElementById("initButton").click()
}) })
//EventBus.$on('updateSlice', this.setLayerExplore) //EventBus.$on('updateSlice', this.setLayerExplore)
EventBus.$on('updateSlice', this.initializeNetwork) //EventBus.$on('updateSlice', this.initializeNetwork)
EventBus.$on('quadTrans', data => { this.dataFSTrans = data }) EventBus.$on('quadTrans', data => { this.dataFSTrans = data })
EventBus.$on('quad', data => { this.dataFS = data }) EventBus.$on('quad', data => { this.dataFS = data })

@ -118,15 +118,10 @@ export default {
var MIVar4 = JSON.parse(this.overallData[31]) var MIVar4 = JSON.parse(this.overallData[31])
var MIVar5 = JSON.parse(this.overallData[32]) var MIVar5 = JSON.parse(this.overallData[32])
MIVar1 = MIVar1.concat(MIVar1)
MIVar1 = MIVar1.concat(this.overallDataTransfMI[0]) MIVar1 = MIVar1.concat(this.overallDataTransfMI[0])
MIVar2 = MIVar2.concat(MIVar2)
MIVar2 = MIVar2.concat(this.overallDataTransfMI[1]) MIVar2 = MIVar2.concat(this.overallDataTransfMI[1])
MIVar3 = MIVar3.concat(MIVar3)
MIVar3 = MIVar3.concat(this.overallDataTransfMI[2]) MIVar3 = MIVar3.concat(this.overallDataTransfMI[2])
MIVar4 = MIVar4.concat(MIVar4)
MIVar4 = MIVar4.concat(this.overallDataTransfMI[3]) MIVar4 = MIVar4.concat(this.overallDataTransfMI[3])
MIVar5 = MIVar5.concat(MIVar5)
MIVar5 = MIVar5.concat(this.overallDataTransfMI[4]) MIVar5 = MIVar5.concat(this.overallDataTransfMI[4])
function min(input) { function min(input) {
@ -164,7 +159,6 @@ export default {
MIVar3 = MIVar3.map(normalize(MIMin3, MIMax3)) MIVar3 = MIVar3.map(normalize(MIMin3, MIMax3))
MIVar4 = MIVar4.map(normalize(MIMin4, MIMax4)) MIVar4 = MIVar4.map(normalize(MIMin4, MIMax4))
MIVar5 = MIVar5.map(normalize(MIMin5, MIMax5)) MIVar5 = MIVar5.map(normalize(MIMin5, MIMax5))
var colorsScaleNodes1 = d3v5.scaleOrdinal() var colorsScaleNodes1 = d3v5.scaleOrdinal()
.domain(d3v5.ticks([MIMin1, MIMax1, 5])) .domain(d3v5.ticks([MIMin1, MIMax1, 5]))
.range(['#6baed6','#4292c6','#2171b5','#08519c','#08306b']); .range(['#6baed6','#4292c6','#2171b5','#08519c','#08306b']);
@ -186,62 +180,62 @@ export default {
var featuresQuad3 = [] var featuresQuad3 = []
var featuresQuad4 = [] var featuresQuad4 = []
var featuresQuad5 = [] var featuresQuad5 = []
// 4 is number of transformations!
for (let i = 0; i < features[4].length; i++) { for (let i = 0; i < features[4].length; i++) {
featuresQuad1.push({"name": features[0][i].key, featuresQuad1.push({"name": features[0][i].key,
"children": [ "children": [
{"name": features[0][i].value[0].keyIns, "lin_color": features[0][i].value[0].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[0][i*features[4].length+0]), "MI_pick":colorsScaleNodes1([this.overallDataTransfMI[0][i*features[4].length+0]].map(normalize(MIMin1, MIMax1))[0])}, {"name": features[0][i].value[0].keyIns, "lin_color": features[0][i].value[0].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[0][i*4+0]), "MI_pick":colorsScaleNodes1(MIVar1[i*features[4].length+0])},
{"name": features[0][i].value[1].keyIns, "lin_color": features[0][i].value[1].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[0][i*features[4].length+1]), "MI_pick":colorsScaleNodes1([this.overallDataTransfMI[0][i*features[4].length+1]].map(normalize(MIMin1, MIMax1))[0])}, {"name": features[0][i].value[1].keyIns, "lin_color": features[0][i].value[1].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[0][i*4+1]), "MI_pick":colorsScaleNodes1(MIVar1[i*features[4].length+1])},
{"name": features[0][i].value[2].keyIns, "lin_color": features[0][i].value[2].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[0][i*features[4].length+2]), "MI_pick":colorsScaleNodes1([this.overallDataTransfMI[0][i*features[4].length+2]].map(normalize(MIMin1, MIMax1))[0])}, {"name": features[0][i].value[2].keyIns, "lin_color": features[0][i].value[2].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[0][i*4+2]), "MI_pick":colorsScaleNodes1(MIVar1[i*features[4].length+2])},
{"name": features[0][i].value[3].keyIns, "lin_color": features[0][i].value[3].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[0][i*features[4].length+3]), "MI_pick":colorsScaleNodes1([this.overallDataTransfMI[0][i*features[4].length+3]].map(normalize(MIMin1, MIMax1))[0])}, {"name": features[0][i].value[3].keyIns, "lin_color": features[0][i].value[3].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[0][i*4+3]), "MI_pick":colorsScaleNodes1(MIVar1[i*features[4].length+3])},
], ],
"lin_color": features[0][i].value[0].valueIns+features[0][i].value[1].valueIns+features[0][i].value[2].valueIns+features[0][i].value[3].valueIns, "lin_color": features[0][i].value[0].valueIns+features[0][i].value[1].valueIns+features[0][i].value[2].valueIns+features[0][i].value[3].valueIns,
"Corr_pick": Math.round(Object.values(corrGlob1)[i+1]['0'] * 100), "Corr_pick": Math.round(Object.values(corrGlob1)[i+1]['0'] * 100),
"MI_pick": colorsScaleNodes1([MIVar1[i]].map(normalize(MIMin1, MIMax1))[0]) "MI_pick": colorsScaleNodes1(MIVar1[i])
}) })
featuresQuad2.push({"name": features[1][i].key, featuresQuad2.push({"name": features[1][i].key,
"children": [ "children": [
{"name": features[1][i].value[0].keyIns, "lin_color": features[1][i].value[0].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[1][i*4+0]), "MI_pick":colorsScaleNodes2([this.overallDataTransfMI[1][i*4+0]].map(normalize(MIMin2, MIMax2))[0])}, {"name": features[1][i].value[0].keyIns, "lin_color": features[1][i].value[0].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[1][i*4+0]), "MI_pick":colorsScaleNodes2(MIVar2[i*features[4].length+0])},
{"name": features[1][i].value[1].keyIns, "lin_color": features[1][i].value[1].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[1][i*4+1]), "MI_pick":colorsScaleNodes2([this.overallDataTransfMI[1][i*4+1]].map(normalize(MIMin2, MIMax2))[0])}, {"name": features[1][i].value[1].keyIns, "lin_color": features[1][i].value[1].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[1][i*4+1]), "MI_pick":colorsScaleNodes2(MIVar2[i*features[4].length+1])},
{"name": features[1][i].value[2].keyIns, "lin_color": features[1][i].value[2].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[1][i*4+2]), "MI_pick":colorsScaleNodes2([this.overallDataTransfMI[1][i*4+2]].map(normalize(MIMin2, MIMax2))[0])}, {"name": features[1][i].value[2].keyIns, "lin_color": features[1][i].value[2].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[1][i*4+2]), "MI_pick":colorsScaleNodes2(MIVar2[i*features[4].length+2])},
{"name": features[1][i].value[3].keyIns, "lin_color": features[1][i].value[3].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[1][i*4+3]), "MI_pick":colorsScaleNodes2([this.overallDataTransfMI[1][i*4+3]].map(normalize(MIMin2, MIMax2))[0])}, {"name": features[1][i].value[3].keyIns, "lin_color": features[1][i].value[3].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[1][i*4+3]), "MI_pick":colorsScaleNodes2(MIVar2[i*features[4].length+3])},
], ],
"lin_color": features[1][i].value[0].valueIns+features[1][i].value[1].valueIns+features[1][i].value[2].valueIns+features[1][i].value[3].valueIns, "lin_color": features[1][i].value[0].valueIns+features[1][i].value[1].valueIns+features[1][i].value[2].valueIns+features[1][i].value[3].valueIns,
"Corr_pick": Math.round(Object.values(corrGlob2)[i+1]['0'] * 100), "Corr_pick": Math.round(Object.values(corrGlob2)[i+1]['0'] * 100),
"MI_pick": colorsScaleNodes2([MIVar2[i]].map(normalize(MIMin2, MIMax2))[0]) "MI_pick": colorsScaleNodes2(MIVar2[i])
}) })
featuresQuad3.push({"name": features[2][i].key, featuresQuad3.push({"name": features[2][i].key,
"children": [ "children": [
{"name": features[2][i].value[0].keyIns, "lin_color": features[2][i].value[0].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[2][i*4+0]), "MI_pick":colorsScaleNodes3([this.overallDataTransfMI[2][i*4+0]].map(normalize(MIMin3, MIMax3))[0])}, {"name": features[2][i].value[0].keyIns, "lin_color": features[2][i].value[0].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[2][i*4+0]), "MI_pick":colorsScaleNodes3(MIVar3[i*features[4].length+0])},
{"name": features[2][i].value[1].keyIns, "lin_color": features[2][i].value[1].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[2][i*4+1]), "MI_pick":colorsScaleNodes3([this.overallDataTransfMI[2][i*4+1]].map(normalize(MIMin3, MIMax3))[0])}, {"name": features[2][i].value[1].keyIns, "lin_color": features[2][i].value[1].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[2][i*4+1]), "MI_pick":colorsScaleNodes3(MIVar3[i*features[4].length+1])},
{"name": features[2][i].value[2].keyIns, "lin_color": features[2][i].value[2].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[2][i*4+2]), "MI_pick":colorsScaleNodes3([this.overallDataTransfMI[2][i*4+2]].map(normalize(MIMin3, MIMax3))[0])}, {"name": features[2][i].value[2].keyIns, "lin_color": features[2][i].value[2].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[2][i*4+2]), "MI_pick":colorsScaleNodes3(MIVar3[i*features[4].length+2])},
{"name": features[2][i].value[3].keyIns, "lin_color": features[2][i].value[3].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[2][i*4+3]), "MI_pick":colorsScaleNodes3([this.overallDataTransfMI[2][i*4+3]].map(normalize(MIMin3, MIMax3))[0])}, {"name": features[2][i].value[3].keyIns, "lin_color": features[2][i].value[3].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[2][i*4+3]), "MI_pick":colorsScaleNodes3(MIVar3[i*features[4].length+3])},
], ],
"lin_color": features[2][i].value[0].valueIns+features[2][i].value[1].valueIns+features[2][i].value[2].valueIns+features[2][i].value[3].valueIns, "lin_color": features[2][i].value[0].valueIns+features[2][i].value[1].valueIns+features[2][i].value[2].valueIns+features[2][i].value[3].valueIns,
"Corr_pick": Math.round(Object.values(corrGlob3)[i+1]['0'] * 100), "Corr_pick": Math.round(Object.values(corrGlob3)[i+1]['0'] * 100),
"MI_pick": colorsScaleNodes3([MIVar3[i]].map(normalize(MIMin3, MIMax3))[0]) "MI_pick": colorsScaleNodes3(MIVar3[i])
}) })
featuresQuad4.push({"name": features[3][i].key, featuresQuad4.push({"name": features[3][i].key,
"children": [ "children": [
{"name": features[3][i].value[0].keyIns, "lin_color": features[3][i].value[0].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[3][i*4+0]), "MI_pick":colorsScaleNodes4([this.overallDataTransfMI[3][i*4+0]].map(normalize(MIMin4, MIMax5))[0])}, {"name": features[3][i].value[0].keyIns, "lin_color": features[3][i].value[0].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[3][i*4+0]), "MI_pick":colorsScaleNodes4(MIVar4[i*features[4].length+0])},
{"name": features[3][i].value[1].keyIns, "lin_color": features[3][i].value[1].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[3][i*4+1]), "MI_pick":colorsScaleNodes4([this.overallDataTransfMI[3][i*4+1]].map(normalize(MIMin4, MIMax5))[0])}, {"name": features[3][i].value[1].keyIns, "lin_color": features[3][i].value[1].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[3][i*4+1]), "MI_pick":colorsScaleNodes4(MIVar4[i*features[4].length+1])},
{"name": features[3][i].value[2].keyIns, "lin_color": features[3][i].value[2].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[3][i*4+2]), "MI_pick":colorsScaleNodes4([this.overallDataTransfMI[3][i*4+2]].map(normalize(MIMin4, MIMax5))[0])}, {"name": features[3][i].value[2].keyIns, "lin_color": features[3][i].value[2].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[3][i*4+2]), "MI_pick":colorsScaleNodes4(MIVar4[i*features[4].length+2])},
{"name": features[3][i].value[3].keyIns, "lin_color": features[3][i].value[3].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[3][i*4+3]), "MI_pick":colorsScaleNodes4([this.overallDataTransfMI[3][i*4+3]].map(normalize(MIMin4, MIMax5))[0])}, {"name": features[3][i].value[3].keyIns, "lin_color": features[3][i].value[3].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[3][i*4+3]), "MI_pick":colorsScaleNodes4(MIVar4[i*features[4].length+3])},
], ],
"lin_color": features[3][i].value[0].valueIns+features[3][i].value[1].valueIns+features[3][i].value[2].valueIns+features[3][i].value[3].valueIns, "lin_color": features[3][i].value[0].valueIns+features[3][i].value[1].valueIns+features[3][i].value[2].valueIns+features[3][i].value[3].valueIns,
"Corr_pick": Math.round(Object.values(corrGlob4)[i+1]['0'] * 100), "Corr_pick": Math.round(Object.values(corrGlob4)[i+1]['0'] * 100),
"MI_pick": colorsScaleNodes4([MIVar4[i]].map(normalize(MIMin4, MIMax4))[0]) "MI_pick": colorsScaleNodes4(MIVar4[i])
}) })
featuresQuad5.push({"name": features[4][i].key, featuresQuad5.push({"name": features[4][i].key,
"children": [ "children": [
{"name": features[4][i].value[0].keyIns, "lin_color": features[4][i].value[0].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[4][i*4+0]), "MI_pick":colorsScaleNodes5([this.overallDataTransfMI[4][i*4+0]].map(normalize(MIMin5, MIMax5))[0])}, {"name": features[4][i].value[0].keyIns, "lin_color": features[4][i].value[0].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[4][i*4+0]), "MI_pick":colorsScaleNodes5(MIVar5[i*features[4].length+0])},
{"name": features[4][i].value[1].keyIns, "lin_color": features[4][i].value[1].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[4][i*4+1]), "MI_pick":colorsScaleNodes5([this.overallDataTransfMI[4][i*4+1]].map(normalize(MIMin5, MIMax5))[0])}, {"name": features[4][i].value[1].keyIns, "lin_color": features[4][i].value[1].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[4][i*4+1]), "MI_pick":colorsScaleNodes5(MIVar5[i*features[4].length+1])},
{"name": features[4][i].value[2].keyIns, "lin_color": features[4][i].value[2].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[4][i*4+2]), "MI_pick":colorsScaleNodes5([this.overallDataTransfMI[4][i*4+2]].map(normalize(MIMin5, MIMax5))[0])}, {"name": features[4][i].value[2].keyIns, "lin_color": features[4][i].value[2].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[4][i*4+2]), "MI_pick":colorsScaleNodes5(MIVar5[i*features[4].length+2])},
{"name": features[4][i].value[3].keyIns, "lin_color": features[4][i].value[3].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[4][i*4+3]), "MI_pick":colorsScaleNodes5([this.overallDataTransfMI[4][i*4+3]].map(normalize(MIMin5, MIMax5))[0])}, {"name": features[4][i].value[3].keyIns, "lin_color": features[4][i].value[3].valueIns, "Corr_pick": Math.round(this.overallDataTransfCorr[4][i*4+3]), "MI_pick":colorsScaleNodes5(MIVar5[i*features[4].length+3])},
], ],
"lin_color": features[4][i].value[0].valueIns+features[4][i].value[1].valueIns+features[4][i].value[2].valueIns+features[4][i].value[3].valueIns, "lin_color": features[4][i].value[0].valueIns+features[4][i].value[1].valueIns+features[4][i].value[2].valueIns+features[4][i].value[3].valueIns,
"Corr_pick": Math.round(Object.values(corrGlob5)[i+1]['0'] * 100), "Corr_pick": Math.round(Object.values(corrGlob5)[i+1]['0'] * 100),
"MI_pick": colorsScaleNodes5([MIVar5[i]].map(normalize(MIMin5, MIMax5))[0]) "MI_pick": colorsScaleNodes5(MIVar5[i])
}) })
} }
@ -584,7 +578,7 @@ export default {
var pie = d3v5.pie().sort(null).value(function (d) { var pie = d3v5.pie().sort(null).value(function (d) {
return d.value; return d.value;
}); });
// FIX ROTATION AND FIX COLORS!
var g = d3v5.select('#overCirc'+index).selectAll('g').data(pieData).enter() var g = d3v5.select('#overCirc'+index).selectAll('g').data(pieData).enter()
.append('g') .append('g')
.attr('transform', function(d, i) { .attr('transform', function(d, i) {
@ -592,14 +586,13 @@ export default {
}); });
g.selectAll('path').data(function (d) { g.selectAll('path').data(function (d) {
console.log(d)
return pie(d); return pie(d);
}).enter().append('path') }).enter().append('path')
.attr('d', function (d) { .attr('d', function (d) {
return d.data.arc(d); return d.data.arc(d);
}).attr('fill', function (d, i) { }).attr('fill', function (d, i) {
if (i == 0) { if (i == 0) {
console.log(d.data.object.name)
return d.data.object.MI_pick return d.data.object.MI_pick
} else { } else {
return '#D3D3D3' return '#D3D3D3'
@ -846,6 +839,7 @@ export default {
sendSliceID = 4 sendSliceID = 4
rootID = 1 rootID = 1
} }
EventBus.$emit('flagSpace', true)
EventBus.$emit('keepRootFun', rootID) EventBus.$emit('keepRootFun', rootID)
EventBus.$emit('updateSlice', sendSliceID) EventBus.$emit('updateSlice', sendSliceID)
} }

@ -417,7 +417,7 @@ export default {
if (index > -1) { if (index > -1) {
featuresGen.splice(index, 1); featuresGen.splice(index, 1);
} }
EventBus.$emit('updateHistoryKey', 4) //EventBus.$emit('updateHistoryKey', 4)
EventBus.$emit('removeFeaturesGen', featuresGen) EventBus.$emit('removeFeaturesGen', featuresGen)
return "url(#diagonalHatch)" return "url(#diagonalHatch)"
} else { } else {

@ -108,6 +108,7 @@ export default Vue.extend({
storeDataTransf: [], storeDataTransf: [],
compareNumber: 0, compareNumber: 0,
IDToCompare: [], IDToCompare: [],
spaceChange: false,
ImportanceCompare: [], ImportanceCompare: [],
featureNames: [], featureNames: [],
initAuto: true, initAuto: true,
@ -489,7 +490,11 @@ export default Vue.extend({
.then(response => { .then(response => {
console.log('Server successfully send the predictive results!') console.log('Server successfully send the predictive results!')
this.ValidResults = response.data.ValidResults this.ValidResults = response.data.ValidResults
console.log(this.spaceChange)
if (!this.spaceChange) {
EventBus.$emit('finalResults', this.ValidResults) EventBus.$emit('finalResults', this.ValidResults)
}
this.spaceChange = false
if (this.transformNodesFlag) { if (this.transformNodesFlag) {
EventBus.$emit('Default') EventBus.$emit('Default')
} }
@ -559,7 +564,9 @@ export default Vue.extend({
console.log('Store newly generated features!') console.log('Store newly generated features!')
EventBus.$emit('updateHistoryKey', 5) EventBus.$emit('updateHistoryKey', 5)
this.threshold() this.threshold()
if (!this.spaceChange) {
EventBus.$emit('Default') EventBus.$emit('Default')
}
}) })
.catch(error => { .catch(error => {
console.log(error) console.log(error)
@ -742,6 +749,8 @@ export default Vue.extend({
EventBus.$on('transformNodes', data => { this.storeDataTransf = data }) EventBus.$on('transformNodes', data => { this.storeDataTransf = data })
EventBus.$on('transformNodes', this.transformNodesFun) EventBus.$on('transformNodes', this.transformNodesFun)
EventBus.$on('flagSpace', data => { this.spaceChange = data })
//Prevent double click to search for a word. //Prevent double click to search for a word.
document.addEventListener('mousedown', function (event) { document.addEventListener('mousedown', function (event) {
if (event.detail > 1) { if (event.detail > 1) {

@ -35,8 +35,9 @@ export default {
this.globalStep = this.globalStep + 1 this.globalStep = this.globalStep + 1
var state = this.globalStep var state = this.globalStep
console.log('Current Step: ', state)
if (state == 1) { if (state == 1) {
this.storeBestSoFarAV = ((parseFloat(this.scoresMeanBest[0]) + parseFloat(this.scoresMeanBest[1]) + parseFloat(this.scoresMeanBest[2])) / 3) this.storeBestSoFarAV = ((parseFloat(this.scoresMean[0]) + parseFloat(this.scoresMean[1]) + parseFloat(this.scoresMean[2])) / 3)
} }
var svg = d3.select("#HistoryPlot"); var svg = d3.select("#HistoryPlot");
@ -94,12 +95,12 @@ export default {
} }
var toWhichFeature = this.historyKey var toWhichTrans = this.historyKey
var toWhichPosition = this.whereIsChange var toWhichPosition = this.whereIsChange
var counterSet = 0 var counterSet = -1
var labelsX = ['Include', 'Exclude', 'Transform', 'Generate'] var labelsX = ['Include', 'Exclude', 'Transform', 'Generate']
console.log(this.valuesGlobal)
for (let i=0; i< features.length; i++) { for (let i=0; i< features.length; i++) {
data.push({ data.push({
label: features[i], label: features[i],
@ -155,40 +156,47 @@ export default {
.attr('r', 0) .attr('r', 0)
.remove() .remove()
if (this.storeBestSoFarAV <= ((parseFloat(this.scoresMean[0]) + parseFloat(this.scoresMean[1]) + parseFloat(this.scoresMean[2])) / 3)) {
if (this.storeBestSoFarAV > ((this.scoresMeanBest[0] + this.scoresMeanBest[1] + this.scoresMeanBest[2]) / 3)) {
this.flag = true this.flag = true
this.storeBestSoFarAV = ((parseFloat(this.scoresMean[0]) + parseFloat(this.scoresMean[1]) + parseFloat(this.scoresMean[2])) / 3)
} }
var previously = this.previousState var previously = this.previousState
var lengthFeatures = this.valuesGlobal.length
var testLoc = this.flag var testLoc = this.flag
console.log('Better results found: ', testLoc)
dots.transition() dots.transition()
.duration(duration) .duration(duration)
.attr('r', function(d){ return d*2 }) .attr('r', function(d){ return d*2 })
.attr('cx', function(d, i){ return i * maxR * 2 + maxR }) .attr('cx', function(d, i){ return i * maxR * 2 + maxR })
.style('fill', function(d){ .style('fill', function(d){
counterSet = counterSet + 1
if (testLoc) { if (testLoc) {
if (toWhichFeature == -1) { if (toWhichTrans == -1) {
previously.push('#B15928') previously.push("black")
}
if (d == state) {
previously[counterSet] = '#B15928'
return previously[counterSet]
} else if (counterSet == (4*toWhichPosition + 0) || counterSet == (4*toWhichPosition + 1) || counterSet == (4*toWhichPosition + 2) || counterSet == (4*toWhichPosition + 3)) {
previously[counterSet] = 'black'
return previously[counterSet]
} else {
return previously[counterSet] return previously[counterSet]
} }
} else { } else {
if (d == state) { if (d == state) {
previously[counterSet] = 'rgb(' + c(d) + ',' + c(d) + ',' + c(d) + ')' previously[counterSet] = "black"
return previously[counterSet]
} else { } else {
return previously[counterSet] return previously[counterSet]
} }
} }
counterSet = counterSet + 1
}) })
this.flag = false this.flag = false
this.previousState = previously this.previousState = previously
console.log(this.previousState)
var dotLabels = rows.selectAll('.dot-label') var dotLabels = rows.selectAll('.dot-label')
.data(function(d){ return d.values }) .data(function(d){ return d.values })

@ -56,6 +56,11 @@ def reset():
global filterActionFinal global filterActionFinal
filterActionFinal = '' filterActionFinal = ''
global storePositions
global storeReplacements
storePositions = []
storeReplacements = []
global keySpecInternal global keySpecInternal
keySpecInternal = 1 keySpecInternal = 1
@ -140,6 +145,11 @@ def retrieveFileName():
global DataResultsRawTest global DataResultsRawTest
global DataRawLengthTest global DataRawLengthTest
global storePositions
global storeReplacements
storePositions = []
storeReplacements = []
fileName = request.get_data().decode('utf8').replace("'", '"') fileName = request.get_data().decode('utf8').replace("'", '"')
global keySpecInternal global keySpecInternal
@ -507,7 +517,14 @@ def executeModel(exeCall, flagEx, nodeTransfName):
currentColumn = columnsNewGen[exeCall[0]] currentColumn = columnsNewGen[exeCall[0]]
subString = currentColumn[currentColumn.find("(")+1:currentColumn.find(")")] subString = currentColumn[currentColumn.find("(")+1:currentColumn.find(")")]
replacement = currentColumn.replace(subString, nodeTransfName) replacement = currentColumn.replace(subString, nodeTransfName)
columnsNewGen[exeCall[0]] = replacement storePositions.append(exeCall[0])
storeReplacements.append(replacement)
pos = 0
for repl in storeReplacements:
print(pos)
print(repl)
columnsNewGen[storePositions[pos]] = repl
pos += 1
if (len(splittedCol) == 1): if (len(splittedCol) == 1):
XData[nodeTransfName] = XDataStoredOriginal[nodeTransfName] XData[nodeTransfName] = XDataStoredOriginal[nodeTransfName]
else: else:
@ -537,7 +554,7 @@ def executeModel(exeCall, flagEx, nodeTransfName):
columnsNames.append(splittedCol[0]) columnsNames.append(splittedCol[0])
else: else:
columnsNames.append(splittedCol[0]+'_'+tran) columnsNames.append(splittedCol[0]+'_'+tran)
print(columnsNames)
featureImportanceData = estimatorFeatureSelection(XData, estimator) featureImportanceData = estimatorFeatureSelection(XData, estimator)
estimator.fit(XData, yData) estimator.fit(XData, yData)
yPredict = estimator.predict(XData) yPredict = estimator.predict(XData)
@ -663,7 +680,7 @@ def Transformation(quadrant1, quadrant2, quadrant3, quadrant4, quadrant5):
XDataNumeric = XDataStoredOriginal.select_dtypes(include='number') XDataNumeric = XDataStoredOriginal.select_dtypes(include='number')
columns = list(XDataNumeric) columns = list(XDataNumeric)
print(columns)
global packCorrTransformed global packCorrTransformed
packCorrTransformed = [] packCorrTransformed = []
@ -1421,7 +1438,7 @@ def storeGeneratedFeat():
@cross_origin(origin='localhost',headers=['Content-Type','Authorization']) @cross_origin(origin='localhost',headers=['Content-Type','Authorization'])
@app.route('/data/transformation', methods=["GET", "POST"]) @app.route('/data/transformation', methods=["GET", "POST"])
def transformFeatures(): def transformFeatures():
print('transform') print('Transform')
retrieveTransform = request.get_data().decode('utf8').replace("'", '"') retrieveTransform = request.get_data().decode('utf8').replace("'", '"')
retrieveTransform = json.loads(retrieveTransform) retrieveTransform = json.loads(retrieveTransform)
clickedNodeName = retrieveTransform['nameClicked'] clickedNodeName = retrieveTransform['nameClicked']

Loading…
Cancel
Save