我使用PHP / mongodb / javascript来构建我的Google Charts折线图。 在php中,我将一列作为角色工具提示(最后一列)。 现在我看到默认的工具提示,即X轴(日期)和Y轴(值)。 但我想在工具提示中显示日期,值和其他信息(图像版本)。 使用工具提示列,它应该覆盖默认的工具提示,但它不会发生。
如果我在选项中添加focusTarget:category,我可以看到Date,Value和Image版本,但对于整个类别,我不想要这个。我只想看到我点击或悬停的那一点的日期,价值和图像版本。
来自谷歌文档FocusTarget:“基准”似乎是我正在寻找的。当我这样做时,我再次只看到默认的工具提示。
当我使用focustarget:category时,基本上唯一一次默认工具提示被自定义工具提示覆盖。
不确定我错过了什么。
$table = array();
$table['cols'] = array(
array('label' => 'Date','type' => 'date')
);
array_push($table['cols'], array('type' => 'string', 'role' => "tooltip"));
array_push($table['cols'], array('label' => 'Label', 'type' => 'string'));
$numCols = count($table['cols']) - 1;
$numColsMinus1 = count($table['cols']) - 2;
从数据库中,值进入数组
$rows[$row_index]['c'][$numColsMinus1]['v'] = $r["image_ver"];
$rows[$row_index]['c'][$col_index]['v'] = $r[$datatype];
$rows[$row_index]['c'][$numCols]['v'] = $label;
以下是Google ChartWrapper
var chart = new google.visualization.ChartWrapper({
'chartType': 'LineChart',
'containerId': 'chart_div',
'options': {
'interpolateNulls': 'true',
'curveType': 'false',
'animation':{
'duration': 1000,
'easing': 'inAndOut'
},
'titleTextStyle':{ 'fontName': "Verdana", 'fontSize': 15, 'bold': 'false', 'italic': 'false' },
'tooltip': {
'textStyle': { 'fontName': "Arial", 'fontSize': 14, 'italic': 'false' },
//'isHtml': 'true'
//'trigger' : 'selection',
//'trigger' : 'both',
//'trigger' : 'focus'
//'legend' : 'none'
},
"focusTarget": "category",
//"focusTarget": "datum",
//"focusTarget": "",
//"focusTarget": "series",
'chartArea': {'height': '85%', 'width': '70%'},
'hAxis': {'slantedText': false, 'maxAlternation': 1, 'viewWindowMode': 'pretty'},
'allowHtml': 'true',
'legend': {'allowHtml': 'true',
'textStyle': {fontSize: 11}},
'pointSize': 3
}
});
答案 0 :(得分:0)
大多数角色列都应用于最近的左邻居数据列,如here in the Google Charts documentation所示。如果您想为LineChart中的所有行添加自定义工具提示,则必须为每个行添加一个角色列。我不认为您需要使用focusTarget。