dojox.charting.DataSeries を使用して dojo.data.ItemFileReadStore から Dojo 折れ線グラフを作成しています。DataSeries のコンストラクターの 3 番目のパラメーター (値) を使用して、チャート上のポイントを生成するメソッドを指定しています。例えば
function formatLineGraphItem(store,item)
{
var o = {
x: graphIndex++,
y: store.getValue(item, "fileSize"),
};
return o;
}
graphIndex は、fileSize 値ごとに増分される整数です。これにより、数値カウントに対して表示される fileSize を含む折れ線グラフが得られます。これはうまくいきます。
私が望むのは、graphIndex の値の代わりに使用する x 軸ラベルを指定できるようにすることです。つまり、下にあるデータは 1,2,3,4 のままですが、ラベルにはテキストが表示されます (この場合、ファイルサイズがキャプチャされた場所)。
これを行うには、chart.addAxis() を呼び出すときにラベルの配列を x asis に渡しますが、データを反復処理する前に値を知る必要があります。例えば
var dataSeriesConfig = {query: {id: "*"}};
var xAxisLabels = [{text:"2011-11-20",value:1},{text:"2011-11-21",value:2},{text:"2011-11-22",value:3}];
var chart1 = new dojox.charting.Chart("chart1");
chart1.addPlot("default", {type: "Lines", tension: "4"});
chart1.addAxis("x", {labels: xAxisLabels});
chart1.addAxis("y", {vertical: true});
chart1.addSeries("Values", new dojox.charting.DataSeries(dataStore, dataSeriesConfig, formatLineGraphItem));
chart1.render();
xAxisLabels 配列は、dataSeries を準備することで作成できますが、あまり良い回避策ではありません。
x 軸ラベルを提供するために formatLineGraphItem メソッドを拡張する方法を知っている人はいますか? または、オブジェクト o に含めることができる値に関するドキュメントを誰かが持っていますか?
前もって感謝します!