Improve visualization of evaluations
Currently, result of evaluation shows up as a text. Improve the visualization using table tag. Change-Id: Ie5c3a715f9fa5fe570e2b9e0ad48ad923be65058
This commit is contained in:
parent
aa6fe37f23
commit
c5cfa10ade
@ -7,4 +7,39 @@
|
|||||||
</dl>
|
</dl>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<span class="rsp-alt-p3">
|
||||||
|
<dl class="col-md-4">
|
||||||
|
<dt translate>Result</dt>
|
||||||
|
<table class="table">
|
||||||
|
<tr ng-repeat="(key,value) in item.result">
|
||||||
|
<td>{$ key $}</td>
|
||||||
|
<td>{$ value $}</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</dl>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div class="row"
|
||||||
|
ng-if="item.matrix">
|
||||||
|
<span class="rsp-alt-p3">
|
||||||
|
<dl class="col-md-4">
|
||||||
|
<dt translate>Confusion Matrix</dt>
|
||||||
|
<table border=2>
|
||||||
|
<tr ng-repeat="(key,values) in item.matrix track by $index">
|
||||||
|
<td height="50">{$ key $}</td>
|
||||||
|
<td ng-repeat="value in values track by $index">
|
||||||
|
{$ value $}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td></td>
|
||||||
|
<td ng-repeat="(key,values) in item.matrix track by $index">
|
||||||
|
{$ key $}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</dl>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -76,9 +76,6 @@
|
|||||||
.setProperty('source_dataset_url', {
|
.setProperty('source_dataset_url', {
|
||||||
label: gettext('Source Dataset URL')
|
label: gettext('Source Dataset URL')
|
||||||
})
|
})
|
||||||
.setProperty('stdout', {
|
|
||||||
label: gettext('Result')
|
|
||||||
})
|
|
||||||
.setListFunction(listFunction)
|
.setListFunction(listFunction)
|
||||||
.tableColumns
|
.tableColumns
|
||||||
.append({
|
.append({
|
||||||
@ -108,10 +105,6 @@
|
|||||||
id: 'source_dataset_url',
|
id: 'source_dataset_url',
|
||||||
priority: 2
|
priority: 2
|
||||||
})
|
})
|
||||||
.append({
|
|
||||||
id: 'stdout',
|
|
||||||
priority: 2
|
|
||||||
})
|
|
||||||
// for magic-search
|
// for magic-search
|
||||||
registry.getResourceType(resourceType).filterFacets
|
registry.getResourceType(resourceType).filterFacets
|
||||||
.append({
|
.append({
|
||||||
@ -138,23 +131,50 @@
|
|||||||
'label': gettext('Source Dataset URL'),
|
'label': gettext('Source Dataset URL'),
|
||||||
'name': 'source_dataset_url',
|
'name': 'source_dataset_url',
|
||||||
'singleton': true
|
'singleton': true
|
||||||
})
|
|
||||||
.append({
|
|
||||||
'label': gettext('Result'),
|
|
||||||
'name': 'stdout',
|
|
||||||
'singleton': true
|
|
||||||
});
|
});
|
||||||
|
|
||||||
function listFunction(params) {
|
function listFunction(params) {
|
||||||
return meteos.getModelEvaluations(params).then(modifyResponse);
|
return meteos.getModelEvaluations(params).then(modifyResponse);
|
||||||
|
|
||||||
function modifyResponse(response) {
|
function modifyResponse(response) {
|
||||||
return {data: {items: response.data.items.map(addTrackBy)}};
|
return {data: {items: response.data.items.map(parseItems)}};
|
||||||
|
|
||||||
function addTrackBy(item) {
|
function parseItems(item) {
|
||||||
item.trackBy = item.id;
|
item.trackBy = item.id;
|
||||||
|
|
||||||
|
if (item.stdout) {
|
||||||
|
item.result = angular.fromJson(item.stdout.replace(/'/g, '"'));
|
||||||
|
|
||||||
|
if (item.result.Matrix) {
|
||||||
|
item.matrix = createMatrix(item.result.Matrix);
|
||||||
|
delete item.result["Matrix"];
|
||||||
|
}
|
||||||
|
}
|
||||||
return item;
|
return item;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function sum(i) {
|
||||||
|
return i.reduce(function(x, y) { return x + y; });
|
||||||
|
}
|
||||||
|
|
||||||
|
function createMatrix(matrix){
|
||||||
|
|
||||||
|
var table = [];
|
||||||
|
var row = [];
|
||||||
|
var sum_row;
|
||||||
|
|
||||||
|
angular.forEach(matrix, function(record, i) {
|
||||||
|
sum_row = sum(record);
|
||||||
|
|
||||||
|
angular.forEach(record, function(num, i) {
|
||||||
|
row[i] = num + ' (' + Math.round(num/sum_row*1000)/10 + '%)';
|
||||||
|
});
|
||||||
|
|
||||||
|
table[i] = row.concat();
|
||||||
|
});
|
||||||
|
|
||||||
|
return table;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user