技术:Google Reporting API V4 和 Google Visualization API,结合 PHP 和 Javascript。我们无法安装和使用 Google 客户端库有一些特定的原因。
问题:当 Google Reporting API 返回的类型时,Visualization Api 给了我“invalid type Integer”。我知道可视化 API 不支持整数类型,
https://developers.google.com/chart/interactive/docs/reference#DataTable_addColumn
所以问题是动态使用 Reporting API 标题来构造图表标题的正确方法是什么?我们是否需要每次都映射数据类型?
简而言之:我查询 Analytics 数据并获得以下标题结构:
[columnHeader] => Array
(
[dimensions] => Array
(
[0] => ga:date
)
[metricHeader] => Array
(
[metricHeaderEntries] => Array
(
[0] => Array
(
[name] => ga:users
[type] => INTEGER
)
[1] => Array
(
[name] => ga:sessions
[type] => INTEGER
)
)
)
)
当我尝试创建列时,
...
$mtype = $headers['metricHeader']['metricHeaderEntries'][0]['type'];
...
$column_object = "{'type':'$mtype','label':'$mname'}";
// produces {'type':'INTEGER','label':'ga:users'}
...
data.addColumn($column_object);
(Firefox) 控制台记录“无效类型,INTEGER,用于列“用户”。
我可以通过硬编码类型的“数字”来“作弊”:
$column_object = "{'type': 'number' ,'label':'$mname'}";
哪个工作正常,但我不应该(或遗漏一些东西)并且在使指标和维度动态化方面提出了一些挑战。“用户”确实是一个数字/整数。不禁感到这是我忽略的东西,很容易从数据中映射列。