2012-02-23 62 views
0

我仍然是dojo和javascript中的新手,所以这可能是微不足道的。
我创建了一个“dojox.charting.Chart2D” - 图表。
我从数据存储(ItemFileReadStore)获取数据,并可以成功将它们显示在我的DataSeries中。 我也可以创建我的X轴,但只包含简单的数字。 我需要的是添加到我的X轴从我的商店的一个字段的文本值。 我发现这可以用“labelFunc:function(n){}”来完成,但我根本无法让它读取我店里的数据。Dojo图表:如何将数据存储中的标签添加到我的Axis?

我的存储数据是这样的:

{ identifier: "UniqueId" , items: [ 
{"UniqueId":1, "VisitDate":"2012-02-21T00:00:00", "VisitsTotal":407, "Visits10":71, "Visits15":6}, 
{"UniqueId":2, "VisitDate":"2012-02-20T00:00:00", "VisitsTotal":508, "Visits10":80, "Visits15":10}, 
... 

我的代码是这样的:

var store = new dojo.data.ItemFileReadStore({ url: './../Data/MyJSONData.aspx' }); 
chart1 = new dojox.charting.Chart2D("simplechart1"); 
chart1.addAxis("x", {fixUpper: "major",fixLower: "minor",title: 'Datum', 
labelFunc: function (n) { 
// HOW DO I GET THE VALUES 'VisitDate' FROM MY STORE ??? 
}}); 

chart1.addSeries('VisitsTotal', 
new dojox.charting.DataSeries(store, { query: { Visits10: "*"} }, "Visits10"), 
{ stroke: 'red', fill: 'pink' } 
); 

chart1.addSeries('Visits10', 
new dojox.charting.DataSeries(store, { query: { Visits10: "*"} }, "Visits10"), 
{ stroke: 'red', fill: 'pink' } 
); 
... 

我已经尝试过的任意组合,但我真的很缺少一些基本知识,如何从读存储以及如何将我自己的文本值(标签)设置为我的X轴。

预先感谢您。

回答

1

将(标签)添加到X轴。

chart1.addAxis("x", { labels: [{value: 1, text: "Jan"}, {value: 2, text: "Feb"}, 
         {value: 3, text: "Mar"}, {value: 4, text: "Apr"}, 
         {value: 5, text: "May"}, {value: 6, text: "Jun"}, 
         {value: 7, text: "Jul"}] 
    }); 

或者在My jsfiddle.

读取数据看到从商店

store.fetch({ query: {}, 
       onItem: function(item) { 
        console.log(store.getValue(item, 'VisitDate')); 
       } 
}); 

多见于Dojo Livedocstackoverflow

相关问题