2017-01-10 12 views
0

多くの皆さんと同じように、レガシーコードをD3.js v4に変換する際にいくつかの問題があります。今、私はドキュメンテーションを見つけることができず、それを修正する方法が見つからないという問題にぶつかっています。D3.js V4移行の問題

これは私の元のコードだった: https://jsfiddle.net/pt11q8hL/

と私はそれを変換するための管理:

d3.stack().offset('wiggle').values(function(d) 

というエラーを返しますので、 https://jsfiddle.net/m6vzt2sp/

しかし、今、私はこだわっています

d3.stack(...).offset(...).values is not a function 

正しい構文が理解されるべきであることを理解する助けになりました。また、変換する必要がある他のものがわかっていれば教えてください。

+2

あなたのコードには間違ったことがたくさんあります。あなたの最善の策は、すべてをコメントアウトし、それを修正するために行ごとにデバッグすることです。何を呼び出すべきかを知るには、[APIリファレンス](https://github.com/d3/d3/blob/master/API.md)を参照してください。ヒント: '値は関数ではありません。 '一般に、v3 - > v4コードを変換することはできませんが、変更が多すぎるため、新しいバージョンでそれを書き直す必要があります。私の2c。 – Andrew

答えて

0

私はコメントでアンドリューに同意するだろう、私が軸から外れ、V4にいくつかのスクリプトを移行 第1のストリップを私の経験に基づいて、次の一般的な手順を示唆し、スケーリング、アニメーションコード、 は必ずメインのモデリングコード関数を作りますまたは を取得したら、スケーリングで追加を開始し、期待どおりに機能していることを確認してから、 軸を追加し、そこからすべてのアニメーションに移動することができます。 v3とv4の間の変更は主にパラダイム(論理)の変更であり、構文は変更されないので、ドキュメントが最善の策です。