diff --git a/js/tbl_chart.js b/js/tbl_chart.js
index b9b0d6ad05..a88d5349a8 100644
--- a/js/tbl_chart.js
+++ b/js/tbl_chart.js
@@ -154,6 +154,7 @@ function PMA_queryChart(data, passedSettings, passedNonJqplotSettings)
columnNames.push(index);
});
+ // todo: this does not work for "pie" ?
$.each(columnNames, function(index, element) {
if (parseInt(chart_xaxis_idx) != index) {
legends.push(element);
@@ -165,6 +166,7 @@ function PMA_queryChart(data, passedSettings, passedNonJqplotSettings)
case 'spline':
case 'line':
case 'bar':
+ // "The remaining columns"
if (chart_series == 'columns') {
var j = 0;
for (var i=0; i < columnNames.length; i++)
@@ -183,6 +185,7 @@ function PMA_queryChart(data, passedSettings, passedNonJqplotSettings)
j++;
}
} else {
+ // a specific column
var j=0;
var seriesIndex = new Object();
// Get series types and build series object from the query data
@@ -215,15 +218,20 @@ function PMA_queryChart(data, passedSettings, passedNonJqplotSettings)
break;
case 'pie':
- series[0] = new Object();
- series[0].data = new Array();
- $.each(data,function(key,value) {
- series[0].data.push({
- name: value[columnNames[chart_xaxis_idx]],
- y: parseFloat(value[columnNames[0]])
- });
+ // only available for a specific column
+ // todo: warn the user about this
+ if (chart_series != 'columns') {
+ series[0] = new Array();
+ $.each(data,function(key,value) {
+ series[0].push(
+ [
+ value[columnNames[chart_xaxis_idx]],
+ parseFloat(value[chart_series])
+ ]
+ );
});
- break;
+ break;
+ }
}
var settings = {
@@ -262,7 +270,15 @@ function PMA_queryChart(data, passedSettings, passedNonJqplotSettings)
};
}
if (passedNonJqplotSettings.chart.type == 'pie') {
- //settings.tooltip.formatter = function() { return ''+columnNames[0]+'
'+this.y; }
+ settings.seriesDefaults = {
+ renderer: $.jqplot.PieRenderer,
+ rendererOptions: {
+ showDataLabels: true,
+ highlightMouseOver: true,
+ showDataLabels: true,
+ dataLabels: 'value'
+ }
+ };
}
// Overwrite/Merge default settings with passedsettings
$.extend(true, settings, passedSettings);