3

DC.JS コロプレス チャートに色を付けようとしています。デフォルトの colorAccessor が機能していないため、うまく機能させることができません。どんな助けも途方もないでしょう。カスタムのreduce関数が必要な気がしますが、どこでどのように行うのかよくわかりません。

http://codepen.io/MichaelArledge/pen/vLKZzE?editors=001

      chart.width(c_w)
                .height(c_h)
                .dimension(zip_code_dim)
                .group(zip_totals)
                .projection(projection)
                .colorAccessor(function(d){ console.log(d);  return d.value;  })
                .overlayGeoJson(statesJson.features ,"zip_area");
4

1 に答える 1

3

値を取得する場所から overlayGeoJson 関数を定義していません

次のように定義しました。

overlayGeoJson(statesJson.features ,"zip_area");

になるはずだった

 .overlayGeoJson(statesJson.features ,"zip_area", 
function(d){ return d.properties.zip})

さて、上記の関数は郵便番号d.valueを返すので、undefined

.colorAccessor(function(d){ return d.value;  })

そのはず

 .colorAccessor(function (d) { return colors(d); });

色の線形スケールを定義しました。その値は colorAccessor 関数から返されます。

  var colors = d3.scale.linear().range(["#E2F2FF", "#C4E4FF", "#9ED2FF", "#81C5FF", "#6BBAFF", "#51AEFF", "#36A2FF", "#1E96FF", "#0089FF", "#0061B5"]);

完全な作業コードはこちら

お役に立てれば!

于 2015-12-22T09:47:03.413 に答える