2016-05-10 16 views
4

整数の配列ではなくオブジェクトの配列を渡すことはできますか?次のコードは機能しますが、フラットなゼロラインが得られます。Chart.js:データとしてint値の代わりにオブジェクトを渡す

var ctx = document.getElementById("a").getContext("2d"); 
var data = { 
    labels: ["Fri", "Sat", "Sun"], 
    datasets: [{ 
    label: "Chart B", 
    fillColor: "rgba(220,220,220,0.2)", 
    strokeColor: "rgba(150,150,150,1)", 
    pointColor: "rgba(150,150,150,1)", 
    pointStrokeColor: "#fff", 
    pointHighlightFill: "#fff", 
    pointHighlightStroke: "rgba(220,220,220,1)", 
    data: [{ 
       y: 48, 
       name: "Value one", 
       date: "2015-04-30" 
      }, { 
       y: 40, 
       name: "Value two", 
       date: "2016-05-30" 
      }, { 
       y: 19, 
       name: "Value three", 
       date: "2016-06-30" 
      } ] 
    }] 
}; 

var Chart = new Chart(ctx).Line(data); 

答えて

1

つまり、私はあなたの例がうまくいくと思います。キーはyをチャートのy値に使用し、任意のプロパティをオブジェクトに追加することも重要です。

これはあなたのやっているようだが、あなたはそれが動作していないと報告している...それは私のために働く! ?長い


docs for Lineによると、dataNumber[]することができ

に答える:

data: [20, 10] 

...しかし、それはまたPoint[]ことができます:

data: [{ 
     x: 10, 
     y: 20 
    }, { 
     x: 15, 
     y: 10 
    }] 

これは、まばらにデータが格納されているデータセットに使用するためのものです。実験を通して、xプロパティを省略し、単にyプロパティを指定することができます。通常通り、xの値が推測されます。

ラベルコールバックからアクセスできる他の任意のプロパティを追加することもできます。私は古いバージョンを使用していたように、 `、それが見えます。チャート` VARチャート=新しいチャート(CTX).LINE(データ)の作成を見てみると

data: [{ 
     y: 20, 
     myProperty: "Something" 
    }, { 
     y: 10, 
     myProperty: "Something Else" 
    }] 
+0

:だから、あなたはこのようなもので終わるかもしれません。新しいリリースで最初にテストする必要があります。 –

関連する問題