tooltips for radar charts are working

This commit is contained in:
etimberg 2015-10-30 20:35:36 -04:00
parent 6716dbb7e5
commit 1017934dce
3 changed files with 19 additions and 3 deletions

View File

@ -167,6 +167,7 @@
// Utility // Utility
_datasetIndex: this.index, _datasetIndex: this.index,
_index: index, _index: index,
_scale: this.chart.scale,
// Desired view properties // Desired view properties
_model: { _model: {

View File

@ -42,7 +42,17 @@
beforeTitle: helpers.noop, beforeTitle: helpers.noop,
title: function(tooltipItems, data) { title: function(tooltipItems, data) {
// Pick first xLabel for now // Pick first xLabel for now
return tooltipItems.length > 0 ? tooltipItems[0].xLabel : ''; var title = '';
if (tooltipItems.length > 0) {
if (tooltipItems[0].xLabel) {
title = tooltipItems[0].xLabel;
} else if (data.labels.length > 0 && tooltipItems[0].index < data.labels.length) {
title = data.labels[tooltipItems[0].index];
}
}
return title;
}, },
afterTitle: helpers.noop, afterTitle: helpers.noop,
@ -194,9 +204,10 @@
var tooltipItems = []; var tooltipItems = [];
if (this._options.tooltips.mode == 'single') { if (this._options.tooltips.mode == 'single') {
var yScale = element._yScale || element._scale; // handle radar || polarArea charts
tooltipItems.push({ tooltipItems.push({
xLabel: element._xScale ? element._xScale.getLabelForIndex(element._index, element._datasetIndex) : '', xLabel: element._xScale ? element._xScale.getLabelForIndex(element._index, element._datasetIndex) : '',
yLabel: element._yScale ? element._yScale.getLabelForIndex(element._index, element._datasetIndex) : '', yLabel: yScale ? yScale.getLabelForIndex(element._index, element._datasetIndex) : '',
index: element._index, index: element._index,
datasetIndex: element._datasetIndex, datasetIndex: element._datasetIndex,
}); });
@ -207,10 +218,11 @@
return; return;
} }
var currentElement = dataset.metaData[element._index]; var currentElement = dataset.metaData[element._index];
var yScale = element._yScale || element._scale; // handle radar || polarArea charts
tooltipItems.push({ tooltipItems.push({
xLabel: currentElement._xScale ? currentElement._xScale.getLabelForIndex(currentElement._index, currentElement._datasetIndex) : '', xLabel: currentElement._xScale ? currentElement._xScale.getLabelForIndex(currentElement._index, currentElement._datasetIndex) : '',
yLabel: currentElement._yScale ? currentElement._yScale.getLabelForIndex(currentElement._index, currentElement._datasetIndex) : '', yLabel: yScale ? yScale.getLabelForIndex(currentElement._index, currentElement._datasetIndex) : '',
index: element._index, index: element._index,
datasetIndex: datasetIndex, datasetIndex: datasetIndex,
}); });

View File

@ -151,6 +151,9 @@
this.zeroLineIndex = this.ticks.indexOf(0); this.zeroLineIndex = this.ticks.indexOf(0);
}, },
getLabelForIndex: function(index, datasetIndex) {
return this.getRightValue(this.data.datasets[datasetIndex].data[index]);
},
getCircumference: function() { getCircumference: function() {
return ((Math.PI * 2) / this.getValueCount()); return ((Math.PI * 2) / this.getValueCount());
}, },