Commit 7a4eca6e authored by Joshua Gould's avatar Joshua Gould

added sum

parent 9bdcc7f1
morpheus.CollapseDatasetTool = function() { morpheus.CollapseDatasetTool = function () {
}; };
morpheus.CollapseDatasetTool.Functions = [ morpheus.Mean, morpheus.Median, morpheus.CollapseDatasetTool.Functions = [morpheus.Mean, morpheus.Median,
new morpheus.MaxPercentiles([ 25, 75 ]), morpheus.Min, morpheus.Max ]; new morpheus.MaxPercentiles([25, 75]), morpheus.Min, morpheus.Max, morpheus.Sum];
morpheus.CollapseDatasetTool.Functions.fromString = function(s) { morpheus.CollapseDatasetTool.Functions.fromString = function (s) {
for (var i = 0; i < morpheus.CollapseDatasetTool.Functions.length; i++) { for (var i = 0; i < morpheus.CollapseDatasetTool.Functions.length; i++) {
if (morpheus.CollapseDatasetTool.Functions[i].toString() === s) { if (morpheus.CollapseDatasetTool.Functions[i].toString() === s) {
return morpheus.CollapseDatasetTool.Functions[i]; return morpheus.CollapseDatasetTool.Functions[i];
...@@ -11,41 +11,41 @@ morpheus.CollapseDatasetTool.Functions.fromString = function(s) { ...@@ -11,41 +11,41 @@ morpheus.CollapseDatasetTool.Functions.fromString = function(s) {
throw new Error(s + ' not found'); throw new Error(s + ' not found');
}; };
morpheus.CollapseDatasetTool.prototype = { morpheus.CollapseDatasetTool.prototype = {
toString : function() { toString: function () {
return 'Collapse'; return 'Collapse';
}, },
init : function(project, form) { init: function (project, form) {
var setValue = function(val) { var setValue = function (val) {
var isRows = val === 'Rows'; var isRows = val === 'Rows';
var names = morpheus.MetadataUtil.getMetadataNames(isRows ? project var names = morpheus.MetadataUtil.getMetadataNames(isRows ? project
.getFullDataset().getRowMetadata() : project .getFullDataset().getRowMetadata() : project
.getFullDataset().getColumnMetadata()); .getFullDataset().getColumnMetadata());
form.setOptions('collapse_to_fields', names); form.setOptions('collapse_to_fields', names);
}; };
form.$form.find('[name=collapse]').on('change', function(e) { form.$form.find('[name=collapse]').on('change', function (e) {
setValue($(this).val()); setValue($(this).val());
}); });
setValue('Rows'); setValue('Rows');
}, },
gui : function() { gui: function () {
return [ { return [{
name : 'collapse_method', name: 'collapse_method',
options : morpheus.CollapseDatasetTool.Functions, options: morpheus.CollapseDatasetTool.Functions,
value : morpheus.CollapseDatasetTool.Functions[1].toString(), value: morpheus.CollapseDatasetTool.Functions[1].toString(),
type : 'select' type: 'select'
}, { }, {
name : 'collapse', name: 'collapse',
options : [ 'Columns', 'Rows' ], options: ['Columns', 'Rows'],
value : 'Rows', value: 'Rows',
type : 'radio' type: 'radio'
}, { }, {
name : 'collapse_to_fields', name: 'collapse_to_fields',
options : [], options: [],
type : 'select', type: 'select',
multiple : true multiple: true
} ]; }];
}, },
execute : function(options) { execute: function (options) {
var project = options.project; var project = options.project;
var controller = options.controller; var controller = options.controller;
var f = morpheus.CollapseDatasetTool.Functions var f = morpheus.CollapseDatasetTool.Functions
...@@ -66,14 +66,14 @@ morpheus.CollapseDatasetTool.prototype = { ...@@ -66,14 +66,14 @@ morpheus.CollapseDatasetTool.prototype = {
dataset = dataset.getDataset(); dataset = dataset.getDataset();
} }
var set = new morpheus.Map(); var set = new morpheus.Map();
_.each(allFields, function(field) { _.each(allFields, function (field) {
set.set(field, true); set.set(field, true);
}); });
_.each(collapseToFields, function(field) { _.each(collapseToFields, function (field) {
set.remove(field); set.remove(field);
}); });
// hide fields that were not part of collapse to // hide fields that were not part of collapse to
set.forEach(function(val, name) { set.forEach(function (val, name) {
controller.setTrackVisible(name, false, !rows); controller.setTrackVisible(name, false, !rows);
}); });
project.setFullDataset(dataset, true); project.setFullDataset(dataset, true);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment