Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Protovis(Javascript)中访问类似字典的结构_Javascript_Protovis - Fatal编程技术网

如何在Protovis(Javascript)中访问类似字典的结构

如何在Protovis(Javascript)中访问类似字典的结构,javascript,protovis,Javascript,Protovis,我正在尝试使用protovis可视化flickr数据集。我确实理解可视化部分,但是我对访问数据有疑问。我得到了一个可视化示例,它访问数据如下: var data = pv.range(250).map(function(row) { return { views: parseInt(Data.data(row, 2)), //refers to the 4 row and 2nd collumn in CSV users: Data.data(row, 6

我正在尝试使用protovis可视化flickr数据集。我确实理解可视化部分,但是我对访问数据有疑问。我得到了一个可视化示例,它访问数据如下:

var data = pv.range(250).map(function(row) {
    return {
        views: parseInt(Data.data(row, 2)), //refers to the 4 row and 2nd collumn in CSV
        users: Data.data(row, 6),
        date:  Data.data(row, 8))), //more collumns excist but for now we only use these
     };
  });
据我所知,数据集的一部分现在存储在变量数据中,即视图、用户和日期。这个变量能像字典一样被访问吗

我试图做的是检查是否有一个用户出现超过2次的日期。我考虑按如下方式循环使用var数据:

dateUserDict {};

for (d=0; d < data.date.length; d++ ){
    for (i=0; i < data.users.length; i++ ){
        for (j=0; j < data.users.length; j++){
            if (data.users[i] == data.users[j]){
                userCounter++ //this should count the number of occurences of a specific user on a specific date
                dateUserDict[data.date] = [data.user][userCounter]}
        }
    }
}
dateUserDict{};
对于(d=0;d
这似乎不起作用。我试图将事件(用户在特定日期发生的次数)存储在字典中。如果我得到了所描述的字典,我可以很容易地想象整个事情。但正是这种从第一个dict(数据)到第二个dict(dateUserDict)的转换让我感到不舒服

非常感谢您的帮助或推动

谢谢


jorrit

您提供的函数将生成一个Javascript对象数组

var data = pv.range(250).map(function(row) {
  return {
    views: parseInt(Data.data(row, 2)), //refers to the 4 row and 2nd collumn in CSV
    users: Data.data(row, 6),
    date:  Data.data(row, 8))), //more collumns excist but for now we only use these
  };
});
结果如下所示:

var data = [ {views:10, users: 9, date: '09/13/1975'}, ... ]

因此,与其使用data.users.length,不如使用data.length,而不是data.users[i],您应该使用data[i].users等等。

很抱歉反应太晚,但您是对的。2d对象总是让我困惑;)