Google chart:修改toopl提示
问题描述:
我有一个使用google图表API的联合图表。这里我想更新图表的工具提示。Google chart:修改toopl提示
由于这些图表中有很多重叠,我可能无法实际悬停在每个离散点上并查看数据。
答
可以使用DataView
提供计算列
其构建工具提示该行
看到下面的代码片段...
var dataView = new google.visualization.DataView(joinedData);
dataView.setColumns([0, 1, {
calc: function (dt, row) {
return getTooltip(dt, row);
},
role: 'tooltip',
type: 'string',
p: {
html: true
}
}, 2, {
calc: function (dt, row) {
return getTooltip(dt, row);
},
role: 'tooltip',
type: 'string',
p: {
html: true
}
}]);
function getTooltip(dt, row) {
var tooltip = '<div class="tooltip">';
tooltip += '<div>' + dt.getFormattedValue(row, 0) + '</div>';
tooltip += '<div>' + dt.getColumnLabel(1) + '</div>';
if (dt.getValue(row, 1) === null) {
tooltip += '<div>' + dt.getFormattedValue(row + 1, 1) + '</div>';
} else {
tooltip += '<div>' + dt.getFormattedValue(row, 1) + '</div>';
}
tooltip += '<div>' + dt.getColumnLabel(2) + '</div>';
if (dt.getValue(row, 2) === null) {
if (row > 0) {
tooltip += '<div>' + dt.getFormattedValue(row - 1, 2) + '</div>';
}
} else {
tooltip += '<div>' + dt.getFormattedValue(row, 2) + '</div>';
}
tooltip += '</div>';
return tooltip;
}
全段 - >http://jsfiddle.net/sqdfrf8f/1/
注:有一些类型的错误,在
图表上的数据视图不尊重列属性
所以html
财产不被设置
的解决办法是使用数据视图的方法 - >toDataTable()
也:需要使用更新库谷歌图表显示 - >update library loader code
在此发布的最新数据行是交错的,而不是从评论小提琴的情况下,因此,没有必要调整行索引,看到这个更新 - > [http://jsfiddle.net/sqdfrf8f/5/](http://jsfiddle.net/sqdfrf8f/5/) – WhiteHat