diff --git a/src/app/components/kbn.js b/src/app/components/kbn.js
index 7d04da18f39..52e1f6c1695 100644
--- a/src/app/components/kbn.js
+++ b/src/app/components/kbn.js
@@ -505,27 +505,52 @@ function($, _, moment) {
return (size.toFixed(decimals) + ext);
};
- kbn.msFormat = function(size) {
+ kbn.getFormatFunction = function(formatName, decimals) {
+ switch(formatName) {
+ case 'short':
+ return function(val) {
+ return kbn.shortFormat(val, decimals);
+ };
+ case 'bytes':
+ return function(val) {
+ return kbn.byteFormat(val, decimals);
+ };
+ case 'ms':
+ return function(val) {
+ return kbn.msFormat(val, decimals);
+ };
+ case 'µs':
+ return function(val) {
+ return kbn.microsFormat(val, decimals);
+ };
+ default:
+ return function(val) {
+ return val % 1 === 0 ? val : val.toFixed(decimals);
+ };
+ }
+ };
+
+ kbn.msFormat = function(size, decimals) {
if (size < 1000) {
return size.toFixed(0) + " ms";
}
else if (size < 60000) {
- return (size / 1000).toFixed(1) + " s";
+ return (size / 1000).toFixed(decimals) + " s";
}
else {
- return (size / 60000).toFixed(1) + " min";
+ return (size / 60000).toFixed(decimals) + " min";
}
};
- kbn.microsFormat = function(size) {
+ kbn.microsFormat = function(size, decimals) {
if (size < 1000) {
return size.toFixed(0) + " µs";
}
else if (size < 1000000) {
- return (size / 1000).toFixed(1) + " ms";
+ return (size / 1000).toFixed(decimals) + " ms";
}
else {
- return (size / 1000000).toFixed(1) + " s";
+ return (size / 1000000).toFixed(decimals) + " s";
}
};
diff --git a/src/app/directives/grafanaGraph.js b/src/app/directives/grafanaGraph.js
index a2f13b9c27d..545ab351f5f 100644
--- a/src/app/directives/grafanaGraph.js
+++ b/src/app/directives/grafanaGraph.js
@@ -155,48 +155,6 @@ function (angular, $, kbn, moment, _) {
};
}
- function render_panel_as_graphite_png(url) {
- url += '&width=' + elem.width();
- url += '&height=' + elem.css('height').replace('px', '');
- url += '&bgcolor=1f1f1f'; // @grayDarker & @kibanaPanelBackground
- url += '&fgcolor=BBBFC2'; // @textColor & @grayLighter
- url += scope.panel.stack ? '&areaMode=stacked' : '';
- url += scope.panel.fill !== 0 ? ('&areaAlpha=' + (scope.panel.fill/10).toFixed(1)) : '';
- url += scope.panel.linewidth !== 0 ? '&lineWidth=' + scope.panel.linewidth : '';
- url += scope.panel.legend ? '' : '&hideLegend=true';
- url += scope.panel.grid.min ? '&yMin=' + scope.panel.grid.min : '';
- url += scope.panel.grid.max ? '&yMax=' + scope.panel.grid.max : '';
- url += scope.panel['x-axis'] ? '' : '&hideAxes=true';
- url += scope.panel['y-axis'] ? '' : '&hideYAxis=true';
-
- switch(scope.panel.y_formats[0]) {
- case 'bytes':
- url += '&yUnitSystem=binary';
- break;
- case 'short':
- url += '&yUnitSystem=si';
- break;
- case 'none':
- url += '&yUnitSystem=none';
- break;
- }
-
- switch(scope.panel.nullPointMode) {
- case 'connected':
- url += '&lineMode=connected';
- break;
- case 'null':
- break; // graphite default lineMode
- case 'null as zero':
- url += "&drawNullAsZero=true";
- break;
- }
-
- url += scope.panel.steppedLine ? '&lineMode=staircase' : '';
-
- elem.html('');
- }
-
function addGridThresholds(options, panel) {
if (panel.grid.threshold1) {
var limit1 = panel.grid.thresholdLine ? panel.grid.threshold1 : (panel.grid.threshold2 || null);
@@ -290,18 +248,10 @@ function (angular, $, kbn, moment, _) {
function configureAxisMode(axis, format) {
if (format === 'bytes') {
- axis.mode = "byte";
+ axis.mode = 'byte';
}
- if (format === 'short') {
- axis.tickFormatter = function(val) {
- return kbn.shortFormat(val, 1);
- };
- }
- if (format === 'ms') {
- axis.tickFormatter = kbn.msFormat;
- }
- if (format === 'µs') {
- axis.tickFormatter = kbn.microsFormat;
+ else if (format !== 'none') {
+ axis.tickFormatter = kbn.getFormatFunction(format, 1);
}
}
@@ -333,28 +283,30 @@ function (angular, $, kbn, moment, _) {
var $tooltip = $('