在php数据表中为谷歌图表自定义html工具提示添加属性
我试图通过将它们添加到数据表中来创建我的谷歌图表中的自定义html工具提示,现在我的数据表正在PHP中创建,如下所示:
$datatable = array('cols' => array( array('type' => 'string', 'role' => 'domain', 'label' => 'Month'), array('type' => 'string', 'role' => 'tooltip'), array('type' => 'string', 'role' => 'domain', 'label' => 'Omzet'), array('type' => 'number', 'label' => 'Omzet '.$jaar), array('type' => 'number', 'label' => 'Omzet '.($jaar-1)), array('type' => 'string', 'role' => 'domain', 'label' => 'Aantal'), array('type' => 'number', 'label' => 'Aantal '.$jaar), array('type' => 'number', 'label' => 'Aantal '.($jaar-1)) ));
并填写如下:
$datatable['rows'][] = array('c' => array( array('v' => $monthname), array('v' => 'custom
tooltip '.$monthname), array('v' => 'Omzet '.$monthname), array('v' => $row['totaal']), array('v' => $omzet), array('v' => 'Aantal'), array('v' => $row['aantal']), array('v' => $aantal) ));
但是对于您可以在Javascript中为Google图表指定的数据表,您必须添加类似的内容
dataTable.addColumn({'type': 'string', 'role': 'tooltip', 'p': {'html': true}});
否则工具提示将以纯文本而非html标记出现https://developers.google.com/chart/interactive/docs/customizing_tooltip_content#customizing-html-content
这意味着我必须以某种方式将‘p’:{‘html’:true}属性添加到我的数据表中
我试过编辑它
array('type' => 'string', 'role' => 'tooltip', 'p' => '{ html : true}'),
甚至到
array('type' => 'string', 'role' => 'tooltip', 'html' => true),
但这些似乎都不起作用,我也找不到在谷歌上做到这一点的方法。
我希望我已经提供了足够的信息来帮助我们找到答案,如果您需要更多信息请告诉我。
这是我第一次在这里发帖提问,所以请你好好(:
您使用array('type' => 'string', 'role' => 'tooltip', 'p' => '{ html : true}'),
在正确的轨道上array('type' => 'string', 'role' => 'tooltip', 'p' => '{ html : true}'),
但您需要有一个额外的数组'html': true
部分。
它应该看起来像array('type' => 'string', 'role' => 'tooltip', 'p' => array('html' => true));
我在这里尝试过: 链接到测试
dataTable.addColumn({‘type’:’string’,’role’:’tooltip’,’p’:{‘html’:true}});
那是json格式。 所以,如果我理解你,你只需要将数组转换为json数组。 在PHP中,您可以通过json_encode函数执行此操作。
好吧我已经设法修复它,事情是我必须将它添加为额外的数组元素,如下所示:
array('type' => 'string', 'role' => 'tooltip', 'p' => array('html' => true)),
这创建了JSON,其格式是Google图表接受将工具提示转换为HTML格式的文本。