UNPKG

clustergrammer

Version:

This is a clustergram implemented in D3.js. I started from the example http://bost.ocks.org/mike/miserables/ and added the following features

91 lines (78 loc) 2.39 kB
module.exports = function exit_components(params, delays, duration){ var row_nodes = params.network_data.row_nodes; var col_nodes = params.network_data.col_nodes; // remove entire rows var exiting_rows = d3.select(params.root+' .clust_group') .selectAll('.row') .data(params.matrix.matrix, function(d){return d.name;}) .exit(); if (delays.run_transition){ exiting_rows .transition().duration(duration) .style('opacity',0) .remove(); } else { exiting_rows .style('opacity',0) .remove(); } // remove row labels d3.selectAll(params.root+' .row_label_group') .data(row_nodes, function(d){ return d.name;}) .exit() .transition().duration(duration) .style('opacity',0) .remove(); // remove column labels d3.selectAll(params.root+' .col_label_group') .data(col_nodes, function(d){return d.name;}) .exit() .transition().duration(duration) .style('opacity',0) .remove(); // remove row triangles and colorbars d3.selectAll(params.root+' .row_cat_group') .data(row_nodes, function(d){return d.name;}) .exit() .transition().duration(duration) .style('opacity',0) .remove(); // remove row triangles and colorbars d3.selectAll(params.root+' .row_dendro_group') .data(row_nodes, function(d){return d.name;}) .exit() .transition().duration(duration) .style('opacity',0) .remove(); d3.selectAll(params.root+' .col_label_text') .data(col_nodes, function(d){return d.name;}) .exit() .transition().duration(duration) .style('opacity',0) .remove(); d3.selectAll(params.root+' .horz_lines') .data(row_nodes, function(d){return d.name;}) .exit() .transition().duration(duration) .style('opacity',0) .remove(); d3.selectAll(params.root+' .vert_lines') .data(col_nodes, function(d){return d.name;}) .exit() .transition().duration(duration) .style('opacity',0) .remove(); // remove dendrogram d3.selectAll(params.root+' .col_cat_group') .data(col_nodes, function(d){return d.name;}) .exit() .transition().duration(duration) .style('opacity',0) .remove(); d3.selectAll(params.root+' .col_dendro_group') .data(col_nodes, function(d){return d.name;}) .exit() .transition().duration(duration) .style('opacity',0) .remove(); };