D3jsはパス `d`属性をデータにバインドします

パスを動的に生成する適切な方法を見つけようとしています。私は、次のよDashingD3js'パターンD3jsとSVGパスを作成するために。

私の質問は、アクセサ関数の各インデックスをチェックして値を操作することとは別に、操作したい特定のポイントを表す変数を作成することとは別に、動的な線座標を指定する簡単な方法はありますか?

オブジェクトの配列にパスの座標があります。whを使用して、座標を簡単にレスポンシブにすることができます。

var lineData = [ {'x': 100, 'y': 0 }, {'x': w/2, 'y': -150 }, {'x': w/2, 'y': 150}, {'x': 100, 'y': 0}];

次のようなアクセサ機能で座標を操作することができました。

var lineFunction = d3.svg.line()
        .x(function(d, i) {

            // function replacing lineData w/dynamic data

          } 
          return d.x 
        })
        .y(function(d) { return d.y })
        .interpolate('linear');

パスを参照する方法は次のとおりです。

myPath
    .attr('d', function() { return lineFunction(lineData); });

動的な線座標を指定する簡単な方法はありますか?

クールブルー

linedata配列内の値の一部が動的である場合、それらの値はそれを反映している必要があります。

例えば...

function f () {return w/2;}; //assuming w is updated asynchronously
var lineData = [ {'x': 100, 'y': 0 }, {'x': f, 'y': -150 }, {'x': f, 'y': 150}, {'x': 100, 'y': 0}];

次に、値の一部が関数であることをアクセサーに認識させる必要があります...

var lineFunction = d3.svg.line()
.x(function(d, i) {
    return typeof d.x === "function" ? d.x() : d.x;
  })
.y(function(d) { return d.y })
.interpolate('linear');

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

D3jsはGeoJSONからパスを生成します

分類Dev

D3jsでデータを再度バインドする

分類Dev

D3js / AngularJS-ドラッグとデータがrectの座標をバインドします

分類Dev

d3js Force-DirectedArrowsはパスの最後に表示されません

分類Dev

ポリマーはデータを属性にバインドします

分類Dev

D3jsはSVGを画像にエクスポートします

分類Dev

d3jsで複数のパスを選択する

分類Dev

d3jsは多数のノードを強制します

分類Dev

D3JSはJQueryのremoveClass()に似たクラスを削除しますか?

分類Dev

d3jsでSVGパスをアニメーション化する

分類Dev

d3jsポリラインからデータを取得する方法は?

分類Dev

postgresデータベースから選択したデータをjsonまたはcsvに変換して、d3js libで使用する方法は?

分類Dev

d3jsは一方向にズームし、両方向にパンします

分類Dev

d3jsは一方向にズームし、両方向にパンします

分類Dev

D3jsはdata-attributeからデータを設定します

分類Dev

D3js:パスのバウンディングボックスを見つける(getBBox()なし)?

分類Dev

マウスの中ボタンでパンするd3js

分類Dev

d3jsバージョン4でノードとリンクをシミュレーションフォースにアタッチする方法は?

分類Dev

d3jsはアニメーションテキストを円グラフに表示します

分類Dev

d3に複数の外部svgを追加し、それらをデータにバインドします

分類Dev

コードでバインディングをカスタマーバインディングに変換します。特に「establishSecurityContext = false」属性

分類Dev

D3jsはファイルではなく配列からデータを取得します

分類Dev

Angular 2+を使用してデータ属性にバインドする方法は?

分類Dev

d3jsディスパッチチャートにテキストを追加する方法

分類Dev

d3js(+ crossfilter / dc)箱ひげ図のパフォーマンス

分類Dev

D3jsで円形パスの周りに円を描く方法

分類Dev

インデックスによって、d3jsの選択から1つの要素を取得します

分類Dev

d3js最後の円をハイパーリンクにする

分類Dev

XAMLデザイナは、バインド時にデザイナデータ(d:DataContext)の代わりにプロパティ名を表示します

Related 関連記事

  1. 1

    D3jsはGeoJSONからパスを生成します

  2. 2

    D3jsでデータを再度バインドする

  3. 3

    D3js / AngularJS-ドラッグとデータがrectの座標をバインドします

  4. 4

    d3js Force-DirectedArrowsはパスの最後に表示されません

  5. 5

    ポリマーはデータを属性にバインドします

  6. 6

    D3jsはSVGを画像にエクスポートします

  7. 7

    d3jsで複数のパスを選択する

  8. 8

    d3jsは多数のノードを強制します

  9. 9

    D3JSはJQueryのremoveClass()に似たクラスを削除しますか?

  10. 10

    d3jsでSVGパスをアニメーション化する

  11. 11

    d3jsポリラインからデータを取得する方法は?

  12. 12

    postgresデータベースから選択したデータをjsonまたはcsvに変換して、d3js libで使用する方法は?

  13. 13

    d3jsは一方向にズームし、両方向にパンします

  14. 14

    d3jsは一方向にズームし、両方向にパンします

  15. 15

    D3jsはdata-attributeからデータを設定します

  16. 16

    D3js:パスのバウンディングボックスを見つける(getBBox()なし)?

  17. 17

    マウスの中ボタンでパンするd3js

  18. 18

    d3jsバージョン4でノードとリンクをシミュレーションフォースにアタッチする方法は?

  19. 19

    d3jsはアニメーションテキストを円グラフに表示します

  20. 20

    d3に複数の外部svgを追加し、それらをデータにバインドします

  21. 21

    コードでバインディングをカスタマーバインディングに変換します。特に「establishSecurityContext = false」属性

  22. 22

    D3jsはファイルではなく配列からデータを取得します

  23. 23

    Angular 2+を使用してデータ属性にバインドする方法は?

  24. 24

    d3jsディスパッチチャートにテキストを追加する方法

  25. 25

    d3js(+ crossfilter / dc)箱ひげ図のパフォーマンス

  26. 26

    D3jsで円形パスの周りに円を描く方法

  27. 27

    インデックスによって、d3jsの選択から1つの要素を取得します

  28. 28

    d3js最後の円をハイパーリンクにする

  29. 29

    XAMLデザイナは、バインド時にデザイナデータ(d:DataContext)の代わりにプロパティ名を表示します

ホットタグ

アーカイブ