为不同系列添加不同格式的工具提示

Adding tooltips with different formats for different series

我有一个组合图表,其中包含类型为 'date' 的 x 轴和两个 y 轴(一个由线表示,另一个由条表示)。默认情况下,两个系列的工具提示都以这种格式显示:

[Date] (MMM dd, y)
[series title]: [value]

不过,我希望以不同的格式显示条形图系列的工具提示:

[Date] (MMM y)
[series title]: [value]

如何仅更改其中一个系列的工具提示中的日期格式?我尝试使用 format() 方法更改它:

var formatter = new google.visualization.DateFormat({pattern: 'MMM y'});
formatter.format(data, 0);

但这改变了两个系列的工具提示格式。

该功能的实际实施可能有点冗长(我猜经验丰富的 Google 图表 API 开发人员需要 1 个多小时,对于没有经验的开发人员可能需要一天。)

不过,我可以为您指明正确的方向。如果您查看 Custom HTML Tooltips 的文档,第二个示例显示了使用函数来呈现输出。如果你做类似的事情(它不一定是 HTML 工具提示,但你也可以),那么你可以将你的 JavaScript Date 对象传递给函数并格式化它自己只是工具提示。此格式不会更改您的轴格式。

注意:带有为工具提示呈现 HTML 的函数的示例所包含的内容远不止于此。他们正在使用 focusTarget: 'category' 选项,使悬停焦点集中在整行数据的价值上,而不仅仅是一对 x、y 值。要为每个系列提供自定义工具提示,您需要为每个数据列设置一个工具提示列。文档中还有其他部分展示了如何为工具提示设置数据表。你将如何实际编写这在很大程度上取决于你如何导入数据。

您的格式化方法签名可能看起来像这样:formatTooltip(columnName, date, value),或者让它更通用:formatTooptip(dateFormatString, date, value)。祝你好运!