D3 could come with a simple representation of matrix data. Earlier sketch of roughly what this would look like: ``` matrix = { values: [[1, 2], [3, 4]], // sorted row-wise by default rows_iter: function () { return this.values }, columns_iter: function () { return iterator_over_the_transpose_of(this.values) }, flat_rows_iter: function () { return iterator_over_flattened(this.values) }, flat_columns_iter: function () { return iterator_over_the_flattened_transpose_of(this.values) }, rows: function () { return copy(this.values) }, columns: function () { return copy(transpose(this.values)) }, flat_rows: function () { return copy(flattened(this.values)) }, flat_columns: function () { return copy(flattened(transpose(this.values))) }, transpose: function() { return { values: transpose(this.values), rows_iter: function () { return this.values }, columns_iter: function () { return iterator_over_the_transpose_of(this.values) }, flat_rows_iter: function () { return iterator_over_flattened(this.values) }, flat_columns_iter: function () { return iterator_over_the_flattened_transpose_of(this.values) }, rows: function () { return copy(this.values) }, columns: function () { return copy(transpose(this.values)) }, flat_rows: function () { return copy(flattened(this.values)) }, flat_columns: function () { return copy(flattened(transpose(this.values))) }, } }, }; ```
This issue appears to be discussing a feature request or bug report related to the repository. Based on the content, it seems to be still under discussion. The issue was opened by alexlenail and has received 0 comments.