我正在使用谷歌电子表格来提供给我的柱形图。为了使单个列成为不同的颜色,我在图表中每列的电子表格中的相对列上将值设置为0时使用了一种黑客。这给了我图表中每列所需的颜色差异。我现在遇到的问题是工具提示不适用于每一列,并且想知道如何在我的代码中实现正常工作。
google.load('visualization', '1', {packages: ['corechart']});
</script>
<script type="text/javascript">
var visualization;
function drawVisualization() {
var query = new google.visualization.Query(
'http://spreadsheets.google.com/tq?key=0AjlSK7_zXoNHdDhrU2xiaHVIQmR1WldYZm1yMTNkM3c&pub=1');
// Apply query language statement.
// Send the query with a callback function.
query.send(handleQueryResponse);
}
function handleQueryResponse(response) {
if (response.isError()) {
alert('Error in query: ' + response.getMessage() + ' ' + response.getDetailedMessage());
return;
}
var data = response.getDataTable();
// set the 3rd column to the "tooltip" role
data.setColumnProperty(3, 'role', 'tooltip');
visualization = new google.visualization.ColumnChart(document.getElementById('visualization'));
visualization.draw(data, {legend: 'none', colors:['blue','red'],is3D:'True', isStacked:'true'});
}
google.setOnLoadCallback(drawVisualization);
答案 0 :(得分:1)
选项A:
调整您的基础数据,使您有4列而不是3列,第2列中的值(第一组数据之后)与当前第3列中的值相同(使用工具提示)。使用新列2和4上的setColumnProperty()作为工具提示。
选项B:
使用insertColumn()将Javascript中的工具提示列3复制到第2列(第一个数据集之后),这应该与选项A具有相同的效果。您必须循环复制值,否则添加通过javascript获得相同的数据。