2017-09-06 4 views
-1

バーの上にグラフの値を生成しようとしていますが、errormessageが表示されています:警告:未定義のプロパティ 'getData'を読み取ることができません。 ここに私のコードは、私はすでに変数Pを宣言して、私はXAMPPを使用しており、私のブラウザはクリップボードAPIをサポートしています。もし誰かが私を助けてくれたら、 お願いします。未定義のプロパティ 'getData'を読み取ることができません

var rlm = <?php echo json_encode($rlm_data); ?>; 
    var rlm_list = <?php echo json_encode($rlm_list); ?>; 

    function get_graph_datarlm(rlm,rlm_list){ 
    var arlm = []; 
     for (var i = 1; i < rlm_list.length; i++) 
      arlm.push([i, rlm[rlm_list[i]][0]]); 
    var brlm = []; 
     for (var i = 1; i < rlm_list.length; i++) 
      brlm.push([i, rlm[rlm_list[i]][1]]); 

    var datarlm = [ 
      { 
       label: "XaktaMissingTickets", 
       data: arlm, 
       bars: { 
        show: true, 
        barWidth: 0.6, 
        fill: true, 
        lineWidth: 0, 
        order: 0, 
        fillColor: "#5b9bd5", 
        fillColor: { colors: [ { opacity: 0.3 }, { opacity: 0.8 } ] } 
       }, 
       //color: "#ffffff" 
       color: "#5b9bd5" 
      }, 
      { 
       label: "TotalTickets", 
       data: brlm, 
       bars: { 
        show: true, 
        barWidth: 0.6, 
        fill: true, 
        lineWidth: 0, 
        order: 1, 
        fillColor: "#ed7d31", 
        fillColor: { colors: [ { opacity: 0.3 }, { opacity: 0.8 } ] } 
       }, 
       //color: "#ffffff" 
       color: "#ed7d31" 
      } 
     ]; 
     return datarlm; 
    } 


    $(document).ready(function() { 

      var p; 
      function plot_bar_chart(rlm,rlm_list){ 

       var trlm = []; 
      for (var i = 0; i < rlm_list.length; i += 1) 
       trlm.push([i, rlm_list[i]]); 
       //console.log(t87r); 
     var p = $.plot("#placeholderrlm", get_graph_datarlm(rlm,rlm_list), { 
      xaxis: { 
       min: 0, 
       max: rlm_list.length, 
       ticks: trlm, 
       tickLength: 0, 
       //labelWidth: 15, 
       labelAlign: 'center', 
       axisLabelPadding: 5, 
       //font: { size: 14, color: 'black' } 
      }, 
      yaxis: { 
       axisLabel: 'Number of Projects', 
       axisLabelUseCanvas: true, 
       axisLabelFontSizePixels: 30, 
       axisLabelFontFamily: 'Verdana, Arial, Helvetica, Tahoma, sans-serif', 
       axisLabelPadding: 5 
      }, 
      grid: { 
       hoverable: true, 
       clickable: false, 
       borderWidth: 1 
      }, 
      legend: { 
       labelBoxBorderColor: "none", 
       position: "right" 
      }, 
      series: { 
       shadowSize: 1, 
      } 
     }); 
     } 
plot_bar_chart(rlm,rlm_list); 

     function showTooltip(x, y, contents, z) { 
      $('<div id="flot-tooltip">' + contents + '</div>').css({ 
       top: y - 60, 
       left: x + 30, 
       'border-color': z, 
      }).appendTo("body").fadeIn(200); 
     } 

     $("#placeholderrlm").bind("plothover", function (event, pos, item) { 
      var previousPoint; 
      if (item) { 
       if (previousPoint != item.datapoint) { 
        previousPoint = item.datapoint; 
        $("#flot-tooltip").remove(); 

        var originalPoint; 

        if (item.datapoint[0] == item.series.data[0][3]) { 
         originalPoint = rlm_list[1]; 
        } 

        var x = originalPoint; 
        y = item.datapoint[1]; 
        z = item.series.color; 

        showTooltip(item.pageX, item.pageY, 
         "<b>" + "Series " + item.series.label + "</b><br /> " + "Point " + x + "</b><br /> " + " Value: " + y, 
         z); 
       } 
      } else { 
       $("#flot-tooltip").remove(); 
       previousPoint = null; 
      } 
     }); 


     $.each(p.getData()[0].data, function(i, el){ 
      var o = p.pointOffset({x: el[0], y: el[1]}); 
      $('<h4 class="rotate" align="center">' + el[1] + '</h4>').css({ 
       position: 'absolute', 
       left: o.left - 125, 
       top: o.top - 40, 
       display: 'none', 
       padding: 1, 
      }).appendTo(p.getPlaceholder()).fadeIn('slow'); 
     }); 

     $.each(p.getData()[1].data, function(i, el){ 
      var o = p.pointOffset({x: el[0], y: el[1]}); 
      $('<h4 class="rotate" align="center">' + el[1] + '</h4>').css({ 
       position: 'absolute', 
       left: o.left + 100, 
       top: o.top + 15, 
       display: 'none', 
       padding: 1, 
      }).appendTo(p.getPlaceholder()).fadeIn('slow'); 
     }); 



    var reload_url = "?PrePac=<?php echo $_GET['PrePac']; ?>&region=<?php echo $_GET['region']; ?>&project=<?php echo $_GET['project']; ?>&partner=<?php echo $_GET['partner']; ?>"; 
    $(".ajax_load").click(function(e){ 
     e.preventDefault(); 
     reload_url=$(this).attr('href'); 
     var region = $(this).data('region'),project = $(this).data('project'); 
     $.getJSON("quality_bar-ajax.php"+reload_url, function(data) { 
      refresh_chart(data); 
      $(".region_name").text(region); 
      $(".project_name").text(project); 
     }); 
     return false; 
    }); 
    setInterval(function(){ 
     $.getJSON("quality_bar-ajax.php"+reload_url, function(data) { 
      refresh_chart(data); 
     }); 
    }, 3000); 

    function refresh_chart(data){ 
     plot_bar_chart(data.rlm,data.rlm_list); 
     p.setupGrid(); //only necessary if your new data will change the axes or grid 
     p.draw(); 
    } 
    }); 
+0

ウェルは 'p'が未定義であることを意味します.... – epascarello

答えて

0

pを2回定義しました。あなたのコードでvar pを探してください。

var p = $.plotをちょうどp = $.plotと変更してください。

+0

この回答が役に立ったと答えた場合は、それを受け入れたものとしてマークしてください。 –

関連する問題