0

グラフを描画するために HighCharts を使用していますが、最小限にしたいコードの冗長性がいくつかあります

コードは次のようになります。

data = [{
        y: pageViews[0],
        color: colors[0],
        drilldown: {
            name: date[0],
            categories: ['a','b','c'],
            data: [photosR[0], ratingsR[0], searchesR[0], socialR[0]],
            color: colors[0]
        }
    }, {
        y: pageViews[1],
        color: colors[1],
        drilldown: {
            name: date[1],
            categories: ['a','b','c'],
            data: [photosR[1], ratingsR[1], searchesR[1], socialR[1]],
            color: colors[1]
        }
    }]

これはハイチャートのドリルダウン棒グラフです。以下のコードを 2 回書く代わりに、ループを作成したい

y: pageViews[0],
color: colors[0],
drilldown: {...}

私はそれがオブジェクトに関係していると感じていますが、まだそれについて多くを学んでいません

4

1 に答える 1

0

すべての配列の長さが同じであると想定しているため、それらのいずれかをループしても安全です。
これはあなたのために働くはずです:

var data = [];
for (var i = 0; i < pageViews.length; i++) {
   data.push({
      y: pageViews[i],
      color: colors[i],
      drilldown: {
         name: date[i],
         categories: ['a','b','c'],
         data: [photosR[i], ratingsR[i], searchesR[i], socialR[i]],
         color: colors[i]
      }
   });
}
于 2013-06-24T11:06:02.030 に答える