我使用的是jquery插件jqplot。我有一个有三个元素的元组,在图中,元组的第一个元素是x轴,yaxis是第二个元素。荧光笔需要显示x,y和元组的第三个元素。类似于:
curve1=[**[x,y,date],** [1, 2,'28-May-11'], [2, 4,'30-May-11'], [3,7,'31-May-11']];荧光笔显示:第一个点上的(1 , 2 , '28-May-11'),第二个点上的(2,4,'30-May-11') ...
有什么想法吗?
发布于 2012-01-12 05:05:50
一种解决方案涉及对showTooltip方法中的jqplot.highlighter.js进行少量修改。在此方法中,以下行用于将html分配给tooltip元素:
elem.html(str);出于您的目的,您可以使用以下内容覆盖此赋值:
elem.html('(' + neighbor.data[0] + ', ' + neighbor.data[1] + ', ' + neighbor.data[2] + ')');因为neighbor.data用于表示包含3个值的元组: x、y和date。
或者..。
一种更通用的解决方案是允许从前端动态生成工具提示文本(而不是在highlighter.js中处理固定的格式化策略)。在这种情况下,您可以将上面的更改替换为以下内容:
elem.html(neighbor.data[2]);然后将tuple的第三个元素从date (我假设仅用于工具提示的目的)更改为工具提示文本本身。
例如,您的元组可能如下所示:
curve1=[ [1, 2, '(1, 2, 28-May-11)'], [2, 4, '(2, 4, 30-May-11)'], [3,7, '(3, 7, 31-May-11)'] ];或者甚至是这样:
curve1=[ [1, 2, 'On 28-May-11 there were 2 instances.'], [2, 4, 'Then on 30-May-11 there were 4.'], ...];希望这能有所帮助。
https://stackoverflow.com/questions/5520831
复制相似问题