简体   繁体   English

谷歌图表HTML工具提示问题

[英]google charts html tooltip issue

When I select one point at chart, tooltip html content is correct, but when select 2 and more points, tooltips merge in one and html of each one is visible. 当我在图表上选择一个点时,工具提示html内容是正确的,但是当选择2个或更多点时,工具提示将合并为一个,并且每个HTML都可见。 Are smbd know what i do wrong ? smbd知道我做错了吗? Can smbd help me ? smbd可以帮助我吗?

var data = new google.visualization.DataTable();
  data.addColumn('date', 'Time');

  data.addColumn('number' , "id");
  data.addColumn({type: 'string', role: 'tooltip', p: {'html': true}});

  var dataArray = [];

  tooltipContent = "<div class='google-chart-tooltip'><center class='google-chart-tooltip-date'>Date: " + date + "</center><br /><p>Value1: " + value1 + ";<br />Value2: " + value2 + ".</p></div>";

  //fill dataArray

  data.addRows(dataArray);
}
var currentChartOptions = {
  tooltip: {
    isHtml: true,
    trigger: 'selection'
  },
  selectionMode: 'multiple',
  interpolateNulls: true,
  hAxis: {
    title: 'Time'
  },
  vAxis: {
      title: "Values"
  }
};

Follows an image of the issue: 遵循问题的图像:

发行图片

looks like a bug, from what i can tell, code looks fine 看起来像个错误,据我所知,代码看起来还不错

there are no missing options or anything like that 没有遗漏的选项或类似的东西

and it is easily replicated, as in the following example 并且很容易复制,如以下示例所示

you could use aggregationTarget: 'none' to force each tooltip to be shown separately 您可以使用aggregationTarget: 'none'来强制每个工具提示分别显示

 google.charts.load('current', { callback: function () { var data = new google.visualization.DataTable(); data.addColumn('date', 'Time'); data.addColumn('number' , 'id'); data.addColumn({type: 'string', role: 'tooltip', p: {html: true}}); var dataArray = [ [new Date(2016, 11, 18), 1000, 400], [new Date(2016, 11, 19), 1170, 1170], [new Date(2016, 11, 20), 660, 1120], [new Date(2016, 11, 21), 1030, 540] ]; dataArray.forEach(function (row) { data.addRow([ row[0], row[1], '<div class="google-chart-tooltip"><center class="google-chart-tooltip-date">Date: ' + row[0] + '</center><br /><p>Value1: ' + row[1] + ';<br />Value2: ' + row[2] + '.</p></div>' ]); }); var currentChartOptions = { aggregationTarget: 'none', tooltip: { isHtml: true, trigger: 'selection' }, selectionMode: 'multiple', interpolateNulls: true, hAxis: { title: 'Time' }, vAxis: { title: 'Values' } }; var chart = new google.visualization.LineChart(document.getElementById('chart_div')); chart.draw(data, currentChartOptions); }, packages:['corechart'] }); 
 <script src="https://www.gstatic.com/charts/loader.js"></script> <div id="chart_div"></div> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM