mirror of
https://github.com/chartjs/Chart.js.git
synced 2024-10-06 12:19:08 +02:00
Replace tooltip item xLabel and yLabel with label and value (#5996)
This commit is contained in:
parent
fee44cfeef
commit
29f7fa23bb
@ -162,10 +162,18 @@ The tooltip items passed to the tooltip callbacks implement the following interf
|
||||
|
||||
```javascript
|
||||
{
|
||||
// X Value of the tooltip as a string
|
||||
// Label for the tooltip
|
||||
label: string,
|
||||
|
||||
// Value for the tooltip
|
||||
value: string,
|
||||
|
||||
// X Value of the tooltip
|
||||
// (deprecated) use `value` or `label` instead
|
||||
xLabel: string,
|
||||
|
||||
// Y value of the tooltip as a string
|
||||
// Y value of the tooltip
|
||||
// (deprecated) use `value` or `label` instead
|
||||
yLabel: string,
|
||||
|
||||
// Index of the dataset the item comes from
|
||||
|
@ -35,27 +35,6 @@ defaults._set('horizontalBar', {
|
||||
},
|
||||
|
||||
tooltips: {
|
||||
callbacks: {
|
||||
title: function(item, data) {
|
||||
// Pick first xLabel for now
|
||||
var title = '';
|
||||
|
||||
if (item.length > 0) {
|
||||
if (item[0].yLabel) {
|
||||
title = item[0].yLabel;
|
||||
} else if (data.labels.length > 0 && item[0].index < data.labels.length) {
|
||||
title = data.labels[item[0].index];
|
||||
}
|
||||
}
|
||||
|
||||
return title;
|
||||
},
|
||||
|
||||
label: function(item, data) {
|
||||
var datasetLabel = data.datasets[item.datasetIndex].label || '';
|
||||
return datasetLabel + ': ' + item.xLabel;
|
||||
}
|
||||
},
|
||||
mode: 'index',
|
||||
axis: 'y'
|
||||
}
|
||||
|
@ -40,15 +40,15 @@ defaults._set('global', {
|
||||
// Args are: (tooltipItems, data)
|
||||
beforeTitle: helpers.noop,
|
||||
title: function(tooltipItems, data) {
|
||||
// Pick first xLabel for now
|
||||
var title = '';
|
||||
var labels = data.labels;
|
||||
var labelCount = labels ? labels.length : 0;
|
||||
|
||||
if (tooltipItems.length > 0) {
|
||||
var item = tooltipItems[0];
|
||||
|
||||
if (item.xLabel) {
|
||||
if (item.label) {
|
||||
title = item.label;
|
||||
} else if (item.xLabel) {
|
||||
title = item.xLabel;
|
||||
} else if (labelCount > 0 && item.index < labelCount) {
|
||||
title = labels[item.index];
|
||||
@ -70,7 +70,11 @@ defaults._set('global', {
|
||||
if (label) {
|
||||
label += ': ';
|
||||
}
|
||||
label += tooltipItem.yLabel;
|
||||
if (!helpers.isNullOrUndef(tooltipItem.value)) {
|
||||
label += tooltipItem.value;
|
||||
} else {
|
||||
label += tooltipItem.yLabel;
|
||||
}
|
||||
return label;
|
||||
},
|
||||
labelColor: function(tooltipItem, chart) {
|
||||
@ -206,10 +210,15 @@ function createTooltipItem(element) {
|
||||
var yScale = element._yScale || element._scale; // handle radar || polarArea charts
|
||||
var index = element._index;
|
||||
var datasetIndex = element._datasetIndex;
|
||||
var controller = element._chart.getDatasetMeta(datasetIndex).controller;
|
||||
var indexScale = controller._getIndexScale();
|
||||
var valueScale = controller._getValueScale();
|
||||
|
||||
return {
|
||||
xLabel: xScale ? xScale.getLabelForIndex(index, datasetIndex) : '',
|
||||
yLabel: yScale ? yScale.getLabelForIndex(index, datasetIndex) : '',
|
||||
label: indexScale ? indexScale.getLabelForIndex(index, datasetIndex) : '',
|
||||
value: valueScale ? valueScale.getLabelForIndex(index, datasetIndex) : '',
|
||||
index: index,
|
||||
datasetIndex: datasetIndex,
|
||||
x: element._model.x,
|
||||
|
Loading…
Reference in New Issue
Block a user