jsonデータをd3jsグラフの軸にプロットする

iJade

jsonこれは、d3jsグラフのx軸とy軸として正常にプロットしたサンプルデータです。

    var data = [
    {
      "count": "202",
      "year": "1590"
    },
    {
      "count": "215",
      "year": "1592"
    }, 
    {
      "count": "179",
      "year": "1593"
    }
];

今私の問題は、以下のjsonをプロットする方法です:

    var data =  {
  "count": [202,215,179],
  "year":[1590,1592,1593]
};

これは、以前のjsonデータの軸をプロットした方法のコードです。

    /******Sample Json data i'm trying to plot********/
var data1 =  {
  "count": [202,215,179],
  "year":[1590,1592,1593]
};

var data = [
    {
      "count": "202",
      "year": "1590"
    },
    {
      "count": "215",
      "year": "1592"
    }, 
    {
      "count": "179",
      "year": "1593"
    }
];

/*************************************************/


/*******************Real Stuff starts here*******************/
var vis = d3.select("#visualisation"),
  WIDTH = 600,
  HEIGHT = 400,
  MARGINS = {
    top: 20,
    right: 20,
    bottom: 20,
    left: 50
  },
  xRange = d3.scale.linear().range([MARGINS.left, WIDTH - MARGINS.right]).domain([d3.min(data, function (d) {
      return (parseInt(d.year, 10) - 5);
    }),
    d3.max(data, function (d) {
      return parseInt(d.year, 10);
    })]),
  yRange = d3.scale.linear().range([HEIGHT - MARGINS.top, MARGINS.bottom]).domain([d3.min(data, function (d) {
      return (parseInt(d.count, 10) - 5);
    }),
    d3.max(data, function (d) {
      return parseInt(d.count, 10);
    })]),


  xAxis = d3.svg.axis() // generate an axis
       .scale(xRange) // set the range of the axis
       .tickSize(5) // height of the ticks
       .tickSubdivide(true), // display ticks between text labels
  yAxis = d3.svg.axis() // generate an axis
       .scale(yRange) // set the range of the axis
       .tickSize(5) // width of the ticks
       .orient("left") // have the text labels on the left hand side
       .tickSubdivide(true); // display ticks between text labels 

function init() {
  vis.append("svg:g") // add a container for the axis
  .attr("class", "x axis") // add some classes so we can style it
  .attr("transform", "translate(0," + (HEIGHT - MARGINS.bottom) + ")") // move it into position
  .call(xAxis); // finally, add the axis to the visualisation

  vis.append("svg:g")
    .attr("class", "y axis")
    .attr("transform", "translate(" + (MARGINS.left) + ",0)")
    .call(yAxis);
}
init();

そしてここにjsfiddleデモへのリンクがあります

ニティーシュクマール

xRangeとyRangeを更新します

   xRange = d3.scale.linear()
               .range([MARGINS.left, WIDTH - MARGINS.right])
               .domain([d3.min(data.year, function (d) {
                        return (parseInt(d, 10) - 5);
                }),

           d3.max(data.year, function (d) {
               return parseInt(d, 10);
          })]),

   yRange = d3.scale.linear()
              .range([HEIGHT - MARGINS.top, MARGINS.bottom])
              .domain([d3.min(data.count, function (d) {
                       return (parseInt(d, 10) - 5);
              }),

            d3.max(data.count, function (d) {
               return parseInt(d, 10);
            })]),

SEE DEMO

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

配列データから折れ線グラフをプロットするD3JS(データは未定義のエラーです)

分類Dev

d3jsを使用してファントでjsonデータをプロットする

分類Dev

Pythonフラスコアプリケーションを使用してd3jsチャートにjsonデータを動的にロードする方法

分類Dev

D3JSを使用して棒グラフをプロットする

分類Dev

3D軸に3列のデータをプロットする

分類Dev

データフレームとは別の軸に複数のグラフをプロットする

分類Dev

データをネストせずにd3jsで複数の折れ線グラフをスタックする

分類Dev

d3JS:線/面グラフでズームアウトしたときに、大きなデータセットの低密度データバージョンをプロットします

分類Dev

折れ線グラフに2つのjsonデータセットをプロットするChart.js

分類Dev

d3jsを更新する方法-`svg`要素を再追加せずにグラフデータのみ

分類Dev

D3.js-時系列データのプロット-JSONからのx軸のフォーマット

分類Dev

2Dデータを3D軸にプロットするPython

分類Dev

JSONデータをグループ化し、D3jsで各グループのグラフを生成するにはどうすればよいですか?

分類Dev

データ値を使用してd3js棒グラフに背景色を追加する

分類Dev

d3jsのsvgグループに要素クローンを追加する

分類Dev

1列のみで複数行のデータフレームのヒストグラムを作成する方法(行の値はx軸にプロットし、列の値はy軸にプロットする必要があります)

分類Dev

D3.js面グラフにプロットされた時系列JSONデータを簡素化します

分類Dev

複数のy軸を持つ複数の折れ線グラフにデータポイントをプロットする方法

分類Dev

1つのグラフに3つの異なるデータをプロットする

分類Dev

棒グラフの上にドットを表示するd3jsマスク

分類Dev

jupyter Notebookを使用して、3つのデータセットから3つのグラフを1つのプロットにプロットする

分類Dev

D3js水平棒グラフ:すべての棒の最後にあるデータから数値を追加する方法は?

分類Dev

D3jsでのx軸のラベルのフォーマット

分類Dev

D3js:いずれかの軸のデータが0の場合、X軸のラベル/ティックを生成するにはどうすればよいですか?

分類Dev

d3.jsグラフにプロットされたグラフのサイズを変更する

分類Dev

2軸に3セットのデータをプロットします

分類Dev

d3jsマップにデータポップアップを追加する

分類Dev

d3jsグラフのテキストをグラフと一緒に拡大縮小する方法は?

分類Dev

d3jsネスト関数をグループとロールアップに置き換える方法

Related 関連記事

  1. 1

    配列データから折れ線グラフをプロットするD3JS(データは未定義のエラーです)

  2. 2

    d3jsを使用してファントでjsonデータをプロットする

  3. 3

    Pythonフラスコアプリケーションを使用してd3jsチャートにjsonデータを動的にロードする方法

  4. 4

    D3JSを使用して棒グラフをプロットする

  5. 5

    3D軸に3列のデータをプロットする

  6. 6

    データフレームとは別の軸に複数のグラフをプロットする

  7. 7

    データをネストせずにd3jsで複数の折れ線グラフをスタックする

  8. 8

    d3JS:線/面グラフでズームアウトしたときに、大きなデータセットの低密度データバージョンをプロットします

  9. 9

    折れ線グラフに2つのjsonデータセットをプロットするChart.js

  10. 10

    d3jsを更新する方法-`svg`要素を再追加せずにグラフデータのみ

  11. 11

    D3.js-時系列データのプロット-JSONからのx軸のフォーマット

  12. 12

    2Dデータを3D軸にプロットするPython

  13. 13

    JSONデータをグループ化し、D3jsで各グループのグラフを生成するにはどうすればよいですか?

  14. 14

    データ値を使用してd3js棒グラフに背景色を追加する

  15. 15

    d3jsのsvgグループに要素クローンを追加する

  16. 16

    1列のみで複数行のデータフレームのヒストグラムを作成する方法(行の値はx軸にプロットし、列の値はy軸にプロットする必要があります)

  17. 17

    D3.js面グラフにプロットされた時系列JSONデータを簡素化します

  18. 18

    複数のy軸を持つ複数の折れ線グラフにデータポイントをプロットする方法

  19. 19

    1つのグラフに3つの異なるデータをプロットする

  20. 20

    棒グラフの上にドットを表示するd3jsマスク

  21. 21

    jupyter Notebookを使用して、3つのデータセットから3つのグラフを1つのプロットにプロットする

  22. 22

    D3js水平棒グラフ:すべての棒の最後にあるデータから数値を追加する方法は?

  23. 23

    D3jsでのx軸のラベルのフォーマット

  24. 24

    D3js:いずれかの軸のデータが0の場合、X軸のラベル/ティックを生成するにはどうすればよいですか?

  25. 25

    d3.jsグラフにプロットされたグラフのサイズを変更する

  26. 26

    2軸に3セットのデータをプロットします

  27. 27

    d3jsマップにデータポップアップを追加する

  28. 28

    d3jsグラフのテキストをグラフと一緒に拡大縮小する方法は?

  29. 29

    d3jsネスト関数をグループとロールアップに置き換える方法

ホットタグ

アーカイブ