3

2 つの JavaScript を 1 つに結合しようとしていますが、機能させるのに苦労しています。私がやろうとしていることが可能かどうかはわかりませんが、スタックオーバーフローが助けを得るのに最適な場所だと思いました.

最初の JavaScript はChart.jsで、具体的には Line Chart オプションです。2 番目のスクリプトは、w3schoolsによる XML in HTML スクリプトです。

私がやりたいのは、XML ファイルを使用して折れ線グラフのデータを入力することです。それに応じてコードを修正しましたが、javascript の非常に基本的な知識しかなく、動作させることができませんでした。これは私が試したものです:

<canvas id="canvas1" width="350" height="300"></canvas>
<script>
   if (window.XMLHttpRequest)
   {    // code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
   }
   else
   {    // code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
   }
   xmlhttp.open("GET","data_chart.xml",false);
   xmlhttp.send();
   xmlDoc=xmlhttp.responseXML; 

   var x=xmlDoc.getElementsByTagName("Row")
   for (i=0;i<x.length;i++)

   var lineChartData = {
                labels : ["1","2","3","4","5"],
                datasets : [{
                     fillColor : "rgba(0,0,0,0.5)",
                     strokeColor : "rgba(0,0,0,1)",
                     pointColor : "rgba(0,0,0,1)",
                     pointStrokeColor : "#fff",
                     data : [x[i].getElementsByTagName("data_chart_1")]
                   }]
           }
   var myLine = new   
   Chart(document.getElementById("canvas1").getContext("2d")).Line(lineChartData);

</script>

つまり、変数のデータ セクションは、XML ファイルからlineChartData行内のすべての要素を取得することによって設定されるということです。このようなことは可能ですか?これを機能させるには、コードをどのように更新する必要がありますか?data_chart_1data_chart.xml

ご助力ありがとうございます。私の質問が明確だったことを願っています。

4

1 に答える 1

2

これを試して

var firstRow = xmlDoc.getElementsByTagName("Row")[0];
//console.log(firstRow);
var dataChart = firstRow.firstChild.nodeValue;
//console.log(dataChart);
var chartData = dataChart.split(",");
.......................
data : chartData
于 2013-10-27T13:49:44.020 に答える