2016-07-08 4 views
0

Im gehen zu x, y-Werte im Textbereich zu nehmen.erstellen ein anderes Array für mit xy Koordinaten zu zeichnen high chart.aber es zeigt nicht graph.i konnte den Fehler nicht finden . bitte Hilfe.Zip zwei Arrays in Javascript nicht zum Zeichnen von High-Chart

 <!DOCTYPE html> 
    <html> 
    <head> 
    <meta charset="ISO-8859-1"> 
    <title>Insert title here</title> 
    <script src="http://code.highcharts.com/highcharts.js"></script> 
    <script type="text/javascript"> 



    $(function() { 
     $('#container').highcharts({ 
      chart: {}, 
      plotOptions: { 
       series: { 
        allowPointSelect: true 
       } 
      }, 
      series: [{ 
       data: [] 
      }] 
     }); 


     $('#button').click(function() { 

     xval = $('#hi').val().split('\n'); 
    var lines=[]; 
    for (var i = 0; i < xval.length; i++) 
        if (xval[i]) lines.push(xval[i]); 
    lines.toString(); 
    document.getElementById("demo").innerHTML=lines; 


    yval = $('#hii').val().split('\n'); 
    var lines1 = []; 
    for (var i = 0; i < yval.length; i++) 
        if (yval[i]) lines1.push(yval[i]);// to remove white space 

    lines1.toString();  
      var mySeries = []; 
      for (var i = 0; i < lines.length; i++) { 
       mySeries.push([lines[i], lines1[i]]); 


      } 


      var chart = $('#container').highcharts(); 
      chart.series[0].setData(mySeries); 
     }); 
    }); 



    </script> 
    </head> 
    <body> 
    <div id="container" style="height: 400px"></div> 
    <textarea id="hi" name="Text1" cols="40" rows="5" placeholder="enter one wdg in one line"></textarea> 

    <textarea id="hii" name="Text2" cols="40" rows="5" placeholder="enter one wdg in one line"></textarea> 
    <p id="demo"></p> 
<button id="button">Add My Data</button> 
    </body> 
    </html> 

überprüfen Sie diese Geige. http://jsfiddle.net/Cm3Ps/443/

Antwort

0

Das Problem wird durch die error #14 verursacht, was bedeutet, dass Sie Zeichenfolgen anstelle von Werten verwenden. Darüber hinaus sollten Sie alle x/y-Werte (d. H. Durch Komma) teilen und jeden von ihnen zu Array schieben. Sie können die Saite nicht wie '10, 20,30 'drücken.

for (var i = 0; i < lines.length; i++) { 
    var itemsX = lines[i].split(','), 
     itemsY = lines1[i].split(','); 

    for(var j = 0; j < itemsX.length; j++) { 
    mySeries.push([parseFloat(itemsX[j]), parseFloat(itemsY[j])]); 
    } 
} 
var chart = $('#container').highcharts(); 

Fest Demo:

+0

danke sehr. – dhanu