2014-09-04 36 views

回答

4

由邁克·博斯托克的優秀教程概述這樣做的一種可能的方法可以在這裏找到:Towards Reusable Charts

要嘗試並簡要總結,提出定義可重複使用的圖表的標準方法這很適合D3處理數據和選擇的方式。首先你定義你的cha RT:

function reusableChart() { 
    //variables, etc. 

    function my() { 
    // chart generation code 
    } 

    //getter-setter methods 

    return my; 
} 

然後,您將實例化這個圖表生成,選擇元素,並在平時D3的方式將數據綁定到他們,最後調用生成器功能:

var myChart = reusableChart().setValue("example", 0); 

d3.tsv("1.tsv", function(error, data) { 
    d3.select("#chart1").datum(data).call(myChart); 
}); 
//etc.. 
+0

特別是與模式麥克建議,你也可以一次做所有的圖表:'d3.select(「#container」)。data([chart1,chart2,chart3])。enter()。append(「svg」)...'。 – 2014-09-04 07:29:26

相關問題