2015-10-01 79 views
0

我想使用D3 parcoords創建一個使用CSV數據的平行座標圖,但似乎在線工作的所有示例在我的筆記本電腦本地無法正常工作(通過Chrome和Safari嘗試)。帶有CSV數據的D3

這是腳本加載CSV數據:

 d3.csv('datatest.csv', function(data) { 
      pcz = d3.parcoords()("#example-zscore") 
      .data(data) 
      //.hideAxis(["name"]) 
      .composite("darker") 
      .render() 
      .alpha(0.35) 
      .brushMode("1D-axes") // enable brushing 
      .interactive() // command line mode 

      change_color("weight (lb)"); 

      // click label to activate coloring 
      pcz.svg.selectAll(".dimension") 
      .on("click", change_color) 
      .selectAll(".label") 
      .style("font-size", "14px"); 
     }); 

需要注意的是,如果我改變.data(data)到:

.data([ 
    [0,-0,0,0,0,1], 
    [1,-1,1,2,1,1], 
    [2,-2,4,4,0.5,1], 
    [3,-3,9,6,0.33,1], 
    [4,-4,16,8,0.25,1] 
]) 

然後用這個數據的圖形繪製。

我的CSV樣子:

name,economy (mpg),cylinders,displacement (cc),power (hp),weight (lb),0-60 mph (s),year 
AMC Ambassador Brougham,13,8,360,175,3821,11,73 
AMC Ambassador DPL,15,8,390,190,3850,8.5,70 
AMC Ambassador SST,17,8,304,150,3672,11.5,72 
AMC Concord DL 6,20.2,6,232,90,3265,18.2,79 
AMC Concord DL,18.1,6,258,120,3410,15.1,78 

回答

2

瀏覽器從文件中讀取數據時強制執行安全限制,所以你需要通過Web服務器訪問您的index.html。

Python有一個內置在有利於這些目的的http服務器,所以瀏覽到您把即代碼的目錄,然後運行:

python -m SimpleHTTPServer 

而且你應該能夠訪問該文件在localhost:8000/index.html(假設這就是你的文件命名,當然)。