【问题标题】:Showing arrays in an array in tooltip in Highcharts在 Highcharts 的工具提示中显示数组中的数组
【发布时间】:2016-09-27 07:04:40
【问题描述】:

我有一个看起来像这样的数据集。

var toolTip = [ ["IN001", "IN002"], "IN003", "IN004", ["IN005", "IN006", "IN007"] ];

我有一个散点图,它使用这些工具提示来显示其中的数据。

{
      type: 'scatter',
      name: 'incidents',
      yAxis: 1,
      data: [ [0,100],[1,100],[2,100],[3,100] ],
      tooltip: {
      pointFormatter: function(){
          return "Incident " + toolTip[this.series.data.indexOf( this )] ;
        }
      }
    },

现在这会在工具提示的一行中显示数据。如果工具提示中有多个数据,我想要下一行。例如

IN0001
IN0002

而不是IN0001, IN0002

我如何得到下一行。在这种情况下,我不知道如何解析这些数据。

我还有一个疑问是,每个名字都应该是一个超链接。 如何使 toolTip 数组中的每个单词在工具提示中显示为链接?

感谢任何帮助。

这是以下的工作模型。 jsFiddle

【问题讨论】:

  • 你有图表的实例吗?
  • @GrzegorzBlachliński jsfiddle.net/o2zmLngr/3
  • 那么你想实现类似这个图表的东西吗? jsfiddle.net/o2zmLngr/5 如果我的示例符合您的要求,我会将其作为答案发布
  • 这正是我想要的。非常感谢您的精彩回答。这绝对是我一直在寻找的解决方案。 :)

标签: javascript arrays graph highcharts tooltip


【解决方案1】:

您可以更改 pointFormatter 函数以满足您的要求。您可以使用“br”添加断线,也可以使用“a”添加链接,就像在普通 HTML 中一样。您可以使用 Highcharts.each() 来迭代您的数组并将下一个元素添加到您的字符串。

pointFormatter: function() {
    var string = '';
    Highcharts.each(toolTip[this.series.data.indexOf(this)], function(p) {
      string += '<a href = "">' + p + '</a><br>'
    })
    return "Incident<br>" + string + "<br />";
}

在这里你可以看到一个例子:http://jsfiddle.net/o2zmLngr/5/

【讨论】:

  • 链接似乎没有激活。我尝试提供一个 href 并单击,但它不包含提到的 URL。
  • 你应该在你的 css 中将指针事件设置为自动:jsfiddle.net/o2zmLngr/9
猜你喜欢
  • 2013-06-05
  • 1970-01-01
  • 2018-09-27
  • 1970-01-01
  • 2019-03-09
  • 1970-01-01
  • 1970-01-01
  • 2017-11-05
  • 1970-01-01
相关资源
最近更新 更多