Commit 13d4dca9 authored by Daria Zenkova's avatar Daria Zenkova

working on pcaplot_tool

parent b9fa407d
This diff is collapsed.
......@@ -312,7 +312,7 @@ morpheus.ChartTool.prototype = {
okCallback: function () {
var dataset = options.dataset;
var eventData = options.eventData;
var array = options.array;
var array = options.array;2
var value = formBuilder.getValue('annotation_value');
var annotationName = formBuilder
.getValue('annotation_name');
......
morpheus.PcaPlotTool = function (chartOptions) {
var _this = this;
this.getVisibleTrackNames = chartOptions.getVisibleTrackNames;
this.project = chartOptions.project;
var project = this.project;
var nr = project.getRowSelectionModel().count();
if (nr != 2) {
alert("Choose exactly two rows to construct pcaPlot");
}
var nc = project.getColumnSelectionModel().count();
if (nc == 0) {
alert("Choose some columns");
}
var selectedDataset = project.getSelectedDataset();
this.$el = $('<div class="container-fluid">'
+ '<div class="row">'
+ '<div data-name="configPane" class="col-xs-2"></div>'
+ '<div class="col-xs-10"><div style="position:relative;" data-name="chartDiv"></div></div>'
+ '</div></div>');
console.log(selectedDataset);
console.log(nr, nc);
};
morpheus.TestTool = function () {
};
morpheus.TestTool.prototype = {
toString : function () {
return 'Test';
},
gui : function () {
return [
];
},
execute : function (options) {
var project = options.project;
var dataset = project.getFullDataset();
var matrix = dataset.seriesArrays;
ocpu.seturl("http://localhost:7120/ocpu/library/base/R");
var req = ocpu.call("ncol", {
"x" : matrix
}, function (session) {
session.getConsole(function (output) {
console.log(output);
});
});
req.fail(function () {
console.log("test tool failed");
});
}
};
......@@ -249,69 +249,15 @@ morpheus.HeatMapToolBar = function (controller) {
toolbarHtml.push('<div class="morpheus-button-divider"></div>');
toolbarHtml.push('<button type="button" class="btn btn-default btn-xs" data-toggle="tooltip" title="Test" name="test">Test</button>');
toolbarHtml.push('<button type="button" class="btn btn-default btn-xs" data-toggle="tooltip" title="PCAPlot" name="pca">PCA</button>');
$buttons.on('click', '[name=test]', function (e) {
$buttons.on('click', '[name=pca]', function () {
console.log("test button clicked");
var project = controller.getProject();
var dataset = project.getFullDataset();
var matrix = dataset.seriesArrays[0];
console.log(dataset);
var rows = dataset.rows;
var columns = dataset.columns;
var array = [];
for (var i = 0; i < rows; i++) {
for (var j = 0; j < columns; j++) {
array.push(matrix[i][j]);
}
}
ProtoBuf = dcodeIO.ProtoBuf;
var builder = ProtoBuf.loadProtoFile("./message.proto"),
rexp = builder.build("rexp"),
REXP = rexp.REXP;
var msgMatrix2 = new REXP({
rclass : REXP.RClass.LIST,
rexpValue : [{
rclass: REXP.RClass.REAL,
realValue: array,
attrName: "dim",
attrValue: {
rclass: REXP.RClass.INTEGER,
intValue: [rows, columns]
}
},
{
rclass : REXP.RClass.REAL,
realValue : 1
}, {
rclass : REXP.RClass.REAL,
realValue : 2
}],
attrName : "names",
attrValue : {
rclass : REXP.RClass.STRING,
stringValue : [{
strval : "es"
},
{
strval : "c1"
}, {
strval : "c2"
}]
}
});
var res = morpheus.ocpu.call(msgMatrix2, {
library : "testproject",
fun : "pcaPlot",
host : "localhost:5721"
});
if (res != -1) {
alert(res);
}
new morpheus.PcaPlotTool({
project: controller.getProject(),
getVisibleTrackNames: _.bind(
controller.getVisibleTrackNames, controller)
});
});
var $lineOneColumn = $el.find('[data-name=lineOneColumn]');
......
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