【问题标题】:Google Visualization API Chart - Line Charts using columns or rows like seriesGoogle Visualization API Chart - 使用列或行的折线图,如系列
【发布时间】:2013-11-25 15:34:32
【问题描述】:

我想使用相同的数据在不同的折线图中保持格式。我的意思是,我想对数据表进行矩阵转换。

我使用谷歌代码示例来更好地解释我的问题:

var data = google.visualization.arrayToDataTable([
      ['Name', 'Gender', 'Donuts February', 'Donuts January'],
      ['Michael' , 'Male', 12, 5],
      ['Elisa', 'Female', 20, 7],
      ['Robert', 'Male', 7, 3],
    ]);

默认情况下,我可以绘制带有 x 轴的折线图:Michael、Elisa 和 Robert 以及两个系列。 但我不知道如何在 x 轴上绘制:“Donuts January”和“Donuts February”以及三个系列(Michael、Elisa 和 Robert)。

有可能吗?

【问题讨论】:

    标签: google-visualization


    【解决方案1】:

    API 不支持切换行和列角色以将行用作序列,将列用作轴值。如果你想做到这一点,你必须从你的旧数据表中以你想要的格式手动构造一个新的数据表。这是您可以做到的一种方法:

    var pivottedData = new google.visualization.DataTable();
    pivottedData.addColumn('string', 'Category');
    for (var i = 0; i < data.getNumberOfRows(); i++) {
        pivottedData.addColumn('number', data.getValue(i, 0));
    }
    // skip "Name" and "Gender" columns
    for (var i = 2; i < data.getNumberOfColumns(); i++) {
        var row = [data.getColumnLabel(i)];
        for (var j = 0; j < data.getNumberOfRows(); j++) {
            row.push(data.getValue(j, i));
        }
        pivottedData.addRow(row);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-16
      • 1970-01-01
      • 1970-01-01
      • 2011-07-18
      相关资源
      最近更新 更多