首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flotr2 -点对点图上的悬停

Flotr2 -点对点图上的悬停
EN

Stack Overflow用户
提问于 2014-07-07 13:07:02
回答 1查看 1K关注 0票数 4

我有一个Flotr2条形图,上面有线条图,当你在直线上悬停时,你应该会看到工具提示中的坐标。

问题是,工具提示没有显示在绿色条形图顶部的直线图中的2个最低点。

看看这个小玩意:http://jsfiddle.net/P855Q/1/

这是图表的javascript:

代码语言:javascript
复制
(function basic_bars (container, horizontal) {

var NumberOfBars = 3;

var barcenters = [];
var barWidth = ( (1 / NumberOfBars) * 0.8 )
var barcenterAdjust =  (barWidth * (NumberOfBars/2)) - (barWidth/2.2);

for (i = 0; i < NumberOfBars; i++) {
    var barcenter = (i *(( 1 / NumberOfBars ) * 0.8));
    barcenter = barcenter - barcenterAdjust;
    barcenters.push(barcenter);
}


var dummyVar,
d0=[
    [barcenters[0] + 3, 5],
    [barcenters[0] + 3, 8.1333],
    [barcenters[0] + 3, 9]
],
d7=[
    [barcenters[1] + 3, 5],
    [barcenters[1] + 3, 8.1333],
    [barcenters[1] + 3, 9]
],
d14=[
    [barcenters[2] + 3, 5],
    [barcenters[2] + 3, 8.1333],
    [barcenters[2] + 3, 9]
];
var a =  [[3,8.303000]];
var b =  [[3,8.574500]];
var c =  [[3,8.222200]];


Flotr.draw(
    container,[
        { data : a, label : 'a' , bars: {show : true, horizontal : false, shadowSize : 0, barWidth : 0.8, grouped: true, mouse:{track:false}} },
        { data : b, label : 'b' , bars: {show : true, horizontal : false, shadowSize : 0, barWidth : 0.8, grouped: true, mouse:{track:false}} },
        { data : c, label : 'c' , bars: {show : true, horizontal : false, shadowSize : 0, barWidth : 0.8, grouped: true, mouse:{track:false}} },
        { data : d7 , lines : { show : true }, points : { show : true },mouse:{track:true,trackFormatter: function(obj){ return obj.y; },relative: true}, color: '#999999'},
        { data : d14 , lines : { show : true }, points : { show : true },mouse:{track:true,trackFormatter: function(obj){ return obj.y; },relative: true}, color: '#999999'},
        { data : d0 , lines : { show : true }, points : { show : true },mouse:{track:true,trackFormatter: function(obj){ return obj.y; },relative: true}, color: '#999999'},
    ],
        {
            yaxis : {min : 1,max: 10,noTicks: 10,tickDecimals: 0,autoscaleMargin : 1},
            xaxis : {min: 0,ticks: [["1", "1"],["2", "2"],["3", "3"],["4", "4"],["5", "5"],["6", "6"],["7", "7"],["8", "8"]]}       
        }
);
})(document.getElementById("example"));
EN

回答 1

Stack Overflow用户

发布于 2014-07-18 13:52:22

我分析了它的细节,发现小提琴是好的!

代码看起来也很好,(除了代码的barcenters部分,它似乎会引起一些问题)。

但是,对于某些值标记,event不会触发,这将更改

代码语言:javascript
复制
<div class="flotr-mouse-value">

上面是带类的div,它为我们提供了点值的工具提示。

每次我们在任何点上悬停时,它都会被动态地重新定位。

我做了一些调整,以测试原因是否是由于使用相同的点3,但我发现没有问题.(虽然有一点开始运作) B(8.1),它没有工作,开始工作!!没有任何改变,但是B(5.0)仍然不能工作。

现在,由于点没有得到focus>>,所以偶数不触发,从而启用toolTip(显示点值)。

由于元素<div id="example"></div>是由脚本动态填充的,因此我们可以得出结论,floatr脚本在覆盖绘图部分中存在一些内部错误,这就导致了这个问题。

更新1:在中间观察到的一个奇怪的行为,因为这只是看起来不起作用,并在其上更改了覆盖线;检查更新的fiddle

我仍然在寻找细节,如果有什么新的东西会更新我的答案。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24611325

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档