我正在尝试从 JSON 文件中的数据创建一个带有 d3 的堆积条形图。每个酒吧都会有特定月份的平局、输球和赢球。
JSON文件:
{
"name": "FHS",
"points": 3000,
"ties": 3,
"losses": 19,
"wins": 50,
"games": {
"2010-09": { "ties": 1, "losses": 2, "wins": 16 },
"2010-10": { "ties": 2, "losses": 5, "wins": 13 },
"2010-11": { "ties": 0, "losses": 12, "wins": 21 }
}
}
我已经使用 d3.json 功能很好地使用了一些数据。例如:
d3.json("data.json",function(error,data)
{
alert(data.name);
alert(data.points);
// etc.
});
但这就是有趣的地方(仅供参考,我正在使用下划线库来获取“游戏”的每个属性......也许这是我出错的地方?)。如果我尝试以下操作:
_.keys(data.games).forEach(function(d)
{
alert(d);
});
我在三个不同的警报框中得到了 2010-09、2010-10、2010-11……完美!但是,如果我尝试以下操作:
_.keys(data.games).forEach(function(d)
{
alert(d.ties);
});
我得到未定义:/事实上,我看到的另一个问题是
alert(data.games.2010-09.ties);
应该可以工作(如果属性名称不是以整数开头或没有连字符......),但不会因为文字的格式(“2010-09”)......所以,我的主要问题是如何以使生成图表变得简单的方式动态访问嵌套对象属性。我已尝试包含足够的上下文,但如果您需要更多信息,请告诉我。提前致谢!