私はボストックの有名なChoropleth exampleを再作成しようとしていますが、郡の代わりに州によって色分けされています。私はそれが主に働いていますが、何らかの理由で最初のいくつかの州がレンダリングしていません。他の質問を調べてみると、selectAll issueかd3がどのようにインデックスを解析しているかに問題があると思いますが、私はそれを理解できないようです。以下はd3地図の視覚化に欠けているアイテム
私が行くと状態をレンダリングする特定の機能である:
function testMap(error, us){
if(error) throw error;
svg.append("g")
.attr("class", "states")
.selectAll("path")
.data(topojson.feature(us, us.objects.states).features)
.enter().append("path")
.attr("fill", function(d) { return color(d.value = num.get(d.id)); })
.attr("d", path)
.append("title")
.text(function(d) { return state.get(d.id) + ", " + d.value; });
svg.append("path")
.datum(topojson.mesh(us, us.objects.states, function(a, b) { return a !== b; }))
.attr("class", "states")
.attr("d", path);
Here's a working JSFiddle with my issue
はPS:私は私が持っている、私はこの例では、D3 v4を使用しようとしています、注意してください学んだことはv3からかなり離れている。
これは、ソリューションどこ鉱山で正確な原因を特定する、より良い答えです問題が浮上していた場所のみを示しています。私がこれまでにスポーツマンのバッジを作ったのであれば、それはジェラードのためだけかもしれない、あなたは2人のうち2人で、私たちはこれまでのところ私が考えていた(まだ道のりはない) –
@AndrewReidあなたの答え(ちょうどupvoted) OPを使用する前に値を確認する方法をOPに示す値。 –
それは完璧に働いた、ありがとう! 0埋め込みの問題全体を回避するには、マップとcsvの両方を読み取るときにidsを整数に変換する方法がありますか?または、javascriptはそのような強制的な型ではありませんか? –