2015-05-04 83 views
1

我被要求根據某個csv內容動態地創建圖形。向JS動態添加代碼

我目前正在使用Chart.js庫,它需要您將元素添加到「label」屬性才能正確構建圖形。

label : ["name1", "name2"] 

我在這裏無法做到的是動態地將包含在「名稱」數組中的元素添加到參數中。

var names = "asia", "africa"; 

我所試圖做到的是,根據裏面的數組「名字」的條目數,一顆顆名稱是要在圖表上顯示。

任何想法?提前致謝!

[編輯]

function createChart(upData, lData, allData){ 

     var ctx = document.getElementById("myChart").getContext("2d"); 
      document.getElementById("myChart").style.width = "<?wsx5 document.write(parameters.widthsize.value);?>px"; 
      document.getElementById("myChart").style.height = "<?wsx5 document.write(parameters.heightsize.value);?>px"; 


      var data = { 
       labels: [ 

       ], 

這是什麼我現在得到的,當然的相關部分。 upData是一個包含我需要的名稱的數組,並且這些元素需要動態添加到標籤部分

+0

您應該能夠使用*標籤:名字*如果你已經把entires成名字你試圖建立圖形之前。如果您要顯示一些示例代碼來演示您的問題,我們可能會幫助您更多。 – Robin

+0

標題有誤導性。 – rottenoats

+0

我可以告訴你,通過在標籤下添加「名稱」(這是數組名稱),就像在「label:names」中一樣,所有名稱都將顯示爲只有一個條目 – Stefano

回答

0

我真的發現問題所在。 顯然,爲了使標籤領域工作的代碼是不帶括號:

function createChart(upData, lData, allData){ 

    var ctx = document.getElementById("myChart").getContext("2d"); 
     document.getElementById("myChart").style.width = "<?wsx5 document.write(parameters.widthsize.value);?>px"; 
     document.getElementById("myChart").style.height = "<?wsx5 document.write(parameters.heightsize.value);?>px"; 


     var data = { 
      labels: arrayname , }