From 2ad6f47b86159ffb0bea9ffb456d05f35f4885e6 Mon Sep 17 00:00:00 2001 From: Mina Lee Date: Mon, 13 Jun 2016 16:53:13 -0700 Subject: [PATCH 1/4] Export data to csv --- .../paragraph/paragraph-chart-selector.html | 14 ++++++++---- .../paragraph/paragraph.controller.js | 22 ++++++++++++------- .../src/app/notebook/paragraph/paragraph.css | 4 ---- 3 files changed, 24 insertions(+), 16 deletions(-) diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html b/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html index 26ffe5ccb09..10f12674d2e 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html @@ -41,11 +41,17 @@ ng-click="setGraphMode('scatterChart', true)"> - - + diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js index 3a1e822881a..095c7cbc9ab 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.controller.js @@ -2145,21 +2145,27 @@ angular.module('zeppelinWebApp') $scope.keepScrollDown = false; }; - $scope.exportToTSV = function () { + $scope.exportToDSV = function (delimiter) { var data = $scope.paragraph.result; - var tsv = ''; + var dsv = ''; for (var titleIndex in $scope.paragraph.result.columnNames) { - tsv += $scope.paragraph.result.columnNames[titleIndex].name + '\t'; + dsv += $scope.paragraph.result.columnNames[titleIndex].name + delimiter; } - tsv = tsv.substring(0, tsv.length - 1) + '\n'; + dsv = dsv.substring(0, dsv.length - 1) + '\n'; for (var r in $scope.paragraph.result.msgTable) { var row = $scope.paragraph.result.msgTable[r]; - var tsvRow = ''; + var dsvRow = ''; for (var index in row) { - tsvRow += row[index].value + '\t'; + dsvRow += row[index].value + delimiter; } - tsv += tsvRow.substring(0, tsvRow.length - 1) + '\n'; + dsv += dsvRow.substring(0, dsvRow.length - 1) + '\n'; } - SaveAsService.SaveAs(tsv, 'data', 'tsv'); + var extension = ''; + if (delimiter === '\t') { + extension = 'tsv'; + } else if (delimiter === ',') { + extension = 'csv'; + } + SaveAsService.SaveAs(dsv, 'data', extension); }; }); diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph.css b/zeppelin-web/src/app/notebook/paragraph/paragraph.css index 59cc28f7014..aa78fb4f8bb 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph.css +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph.css @@ -449,10 +449,6 @@ table.dataTable.table-condensed .sorting_desc:after { font-weight: 500; } -.dropdown-menu > li:first-child > a:hover { - background-color: transparent; -} - table.table-striped { border-top: 1px solid #ddd; margin-top: 20px; From 5437c4ff6f35991cd3e28d757a99d314bb546d22 Mon Sep 17 00:00:00 2001 From: Mina Lee Date: Mon, 13 Jun 2016 23:13:22 -0700 Subject: [PATCH 2/4] Use split button dropdowns for downloading data --- .../paragraph/paragraph-chart-selector.html | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html b/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html index 10f12674d2e..33e64ad9544 100644 --- a/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html +++ b/zeppelin-web/src/app/notebook/paragraph/paragraph-chart-selector.html @@ -41,16 +41,20 @@ ng-click="setGraphMode('scatterChart', true)"> - + -