2016-04-26 8 views
0

チャートを表示するには、次のコードを使用します。HTMLとJavaScriptを使用してチャートにデータを渡す

<div id="name"> </div> 
<div id="testscore"></div> 

上記2つのdivのは、動的な値が含まれています。問題は、「データ」は、ハードチャートを使用して表示された値が表示されるように、私はこれを変更することができますどのようにコード化されています。これらの値をグラフに表示したい。

<script type="text/javascript"> 
    window.onload = function() { 
    var chart = new CanvasJS.Chart("chartContainer", 
    { 
//  title:{ 
//  text: "Olympic Medals of all Times (till 2012 Olympics)" 
//  }, 
     animationEnabled: true, 
     legend: { 
     cursor:"pointer", 
     itemclick : function(e) { 
      if (typeof (e.dataSeries.visible) === "undefined" || e.dataSeries.visible) { 
       e.dataSeries.visible = false; 
      } 
      else { 
       e.dataSeries.visible = true; 
      } 
      chart.render(); 
     } 
     }, 
     axisY: { 
     title: "Time" 
     }, 
     toolTip: { 
     shared: true, 
     content: function(e){ 
      var str = ''; 
      var total = 0 ; 
      var str3; 
      var str2 ; 
      for (var i = 0; i < e.entries.length; i++){ 
      var str1 = "<span style= 'color:"+e.entries[i].dataSeries.color + "'> " + e.entries[i].dataSeries.name + "</span>: <strong>"+ e.entries[i].dataPoint.y + "</strong> <br/>" ; 
      total = e.entries[i].dataPoint.y + total; 
      str = str.concat(str1); 
      } 
      str2 = "<span style = 'color:DodgerBlue; '><strong>"+e.entries[0].dataPoint.label + "</strong></span><br/>"; 
      str3 = "<span style = 'color:Tomato '>Total: </span><strong>" + total + "</strong><br/>"; 

      return (str2.concat(str)).concat(str3); 
     } 

     }, 
     data: [ 
     {   
     type: "bar", 
     showInLegend: true, 
     name: "Black", 
     color: "#000000", 
     dataPoints: [ 
     { y: 0.18, label: "Name"}, 
     { y: 0.12, label: "Name 1"}, 
     { y: 0.59, label: "Name 2"},   
     { y: 1.15, label: "Name 3"},   



     ] 
     }, 
     ] 
    }); 

chart.render(); 
} 
</script> 

答えて

0

あなたは、単にそれは単一の値なら、それはうまくいく

var data = document.getElementById('name').value; 
var data2 = document.getElementById('testscore').value; 

を呼び出すことができます。そうでない場合、あなたはこのようにそれを実行する必要があります。

var array = new Array(); 

、最終的には、店舗:

ここ
var array = $('#your.id').data('stuff'); 

、 "もの" は

<div data-stuff="some data" ></div> 

か、によって配列を作成する以外の何ものでもありませんデータを配列に格納します。

+0

JavaScriptでは、どのようにこれらの要素を表示するためにデータポイントを設定しますか? – usermb1989

+0

私の例によると、dataとdata2の変数名を渡します。だからデータポイントのように:データ。また、co sole.log(data)と入力して正しい形式のデータを取得している場合は、コンソール検査要素タブをチェックします。 –