Google Analytics嵌入式API中的多系列图表

时间:2015-04-01 20:38:25

标签: javascript google-analytics google-analytics-api

我正在使用Embed API创建每日会话的“LINE”图表,每个媒体(ga:sessions,ga:date,ga:medium),但我只能成功创建一个系列(每天的会话)。

var chart = new gapi.analytics.googleCharts.DataChart({
  query : {
    "ids"        : view_id,
    "start-date" : "30daysAgo",
    "end-date"   : "yesterday",
    "dimensions" : "ga:date", // Works, but only produces single series
    // "dimensions" : "ga:date,ga:medium", - Doesn't work
    "metrics"    : "ga:sessions",
  },
  chart : {
    type : "LINE",
    container : "ga-chart",
    options : {
      width: "100%",
      title : title,
    }
  },
});
chart.execute();

使用上面的注释行会产生错误“给定轴上的所有系列必须具有相同的数据类型”。

如何为ga:medium(“referral”,“organic”和“(none)”)的每个值获取单独的系列。

1 个答案:

答案 0 :(得分:4)

  

使用上面的注释行会产生错误“给定轴上的所有系列必须具有相同的数据类型”。

是的,所以这就是问题所在。 Google Charts不知道您想要什么。一方面,你说你想要一个带有日期类型的x轴,然后你说你想要一个x轴,其值是随机字符串(ga:medium)。

您所要求的内容对您(和我)来说具有逻辑意义,因为您要求时间轴,但Embed API无法使其适用于任何两个维度。考虑ga:medium,ga:browser,它在图表上看起来如何?

所以简短的回答是你不能用Embed API的gapi.analytics.googleCharts.DataChart组件做你想要的。它支持查询中的多个指标(因为指标始终是数字),但不支持不同数据类型的多个维度。

答案很长,您可以使用gapi.analytics.report.Data组件并自行运行查询,获取结果,然后在将数据操作为您需要的格式后构建自己的Google图表实例上班。

我希望有所帮助。