2017-03-16 10 views
1

Ich brauche die X-Achsen-Werte, wenn ich über mein Plotly-Diagramm schwebe. Laut der plotly-Dokumentation (https://plot.ly/javascript/hover-events/) sollte der Hover-Event-Callback das Feld "points" enthalten, aus dem ich den x-Wert erhalten soll.Plotly JS: Hover-Ereignis enthält keine Punkte

Aber wenn Sie dieses grundlegende Beispiel betrachten, können Sie sehen, dass der Rückruf das Feld "Punkte" nicht enthält. Auch in anderen Bereichen wie "Daten" sind nicht definiert:

HTML

<div id="tester" style="width:600px;height:250px;"></div> 

JS

$(document).ready(function(){ 

    var tester = $('#tester'); 

    tester.on('plotly_hover', function(data){ 
    console.log(data) 
    }); 

    Plotly.plot('tester', [{ 
     x: [1, 2, 3, 4, 5], 
     y: [1, 2, 4, 8, 16] }], { 
     margin: { t: 0 } }); 
}) 

Sehen Sie diese Geige, um es selbst zu versuchen: https://jsfiddle.net/c1kt3r82/158/

Was mache ich falsch?

Antwort

2
  • plotly-basic scheint nicht schweben Ereignisse zu unterstützen, verwenden plotly-latest statt
  • wenn jQuery mit dem Element zu wählen, ist es ein anderes Objekt zurückgibt, als es document.getElementById nach
  • die hover Ereignisse definiert werden müssen, über tun Aufruf plot

$(document).ready(function() { 
 

 
    var tester = document.getElementById('tester'); 
 

 
    Plotly.plot(tester, [{ 
 
    x: [1, 2, 3, 4, 5], 
 
    y: [1, 2, 4, 8, 16] 
 
    }], { 
 
    margin: { 
 
     t: 0 
 
    } 
 
    }); 
 
    tester.on('plotly_hover', function(data) { 
 
    console.log(data) 
 
    }); 
 
});
<div id="tester" style="width:600px;height:250px;"></div> 
 
<script src="https://cdn.plot.ly/plotly-latest.min.js"></script> 
 
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>

+0

Danke, das war es! :) – ReactiveMax