我需要你的帮助,因为我一直坚持如何从Google API获取辅助数据并在图表上显示它们,让我解释一下:
我已成功从Google AnalyticsAPI检索“访问”数据,并使用以下代码在我的图表中显示这些数据:
$report3 = $ga->getReport(
array('dimensions'=>urlencode('ga:date'),
'metrics'=>urlencode('ga:pageviews,ga:visits'),
'filters'=>urlencode(''),
'sort'=>'ga:date'
)
);
给我一个类似的数组:
[20110726] => Array
(
[ga:pageviews] => 0
[ga:visits] => 0
)
然后我将这些信息放在图表上:
<script type='text/javascript'>
var ga_data = [
<?php
$str = "";
foreach ($report3 as $value)
$str.="{$value["ga:visits"]},";
$str = rtrim($str,",");
echo $str;
?>
];
</script>
最后:
// Create the data table.
var data = new google.visualization.DataTable();
data.addColumn('string', 'Month');
data.addColumn('number', 'visits');
data.addRows(ga_data.length*1);
for (i=9; i<ga_data.length; i++){
data.setValue(i, 0, 'DATE NEEDED');
data.setValue(i, 1, ga_data[i]);
}
唯一的问题是我需要在图表上显示日期:( {[20110726] => Array
(
[ga:pageviews] => 0
[ga:visits] => 0
)
),就像我访问
非常感谢任何帮助!谢谢!!!
答案 0 :(得分:0)
看起来回来的数据将日期作为数组的索引(a.k.a。'Dimension')。只需更新你的循环即可。
foreach(ga_data as $date=>$values){
data.setValue(i, 0, $date);
data.setValue(i, 1, $values['ga:visits']);
}
如果DataVisualization API无法处理该类型,则可能需要将日期拆分为其部分:
$str = '20110726';
$year = substr($str,0,4);
$month = substr($str,4,2);
$day = substr($str,6,2);
然后使用PHP date()函数格式化您的喜好。