IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    R语言学习笔记:获取GA数据并绘制热力图

    肖庆发表于 2016-03-16 17:42:00
    love 0

     

    heatmap

    R是在数据分析领域比较基础实用的一门语言,GA的数据可以直接在这个工具中生成各种图表,本文就简单记录下如何通过R来关联GA数据,并且绘制基于时段和访问的热力图(如上图效果,数据来源于我的测试网站)。

    1、下载并安装R:http://mirrors.xmu.edu.cn/CRAN/

    2、注册Google开发者账号,并开启Analytics权限,API选择其他应用类型,生成client ID和client secret:https://console.developers.google.com/project

    3、在GA中的view视图中找到视图ID

    4、安装并使用必要的R package:

    install.packages("RGoogleAnalytics")
    
    library(RGoogleAnalytics)
    
    install.packages("gplots")
    
    library(gplots)
    
    install.packages("httpuv")
    
    library(httpuv)

    5、授权GA并验证Token:

    GAclient.id <- '123456789.apps.googleusercontent.com'
    client.secret <- 'abcdefghijklmno'
    view.id <- "ga:1234567890"
    
    if (!file.exists("./token")) {
    
    token <- Auth(client.id,client.secret)
    
    token <- save(token,file="./token")
    
    } else {
    
    load("./token")
    
    }
    
    ValidateToken(token)

    6、设置GA查询条件

    start.date <- "2016-01-01"
    
    end.date <- "2016-03-01"
    
    query.list <- Init(start.date = "2016-01-01",
    
    end.date = "2016-03-01",
    
    dimensions = "ga:minute",
    
    metrics = "ga:sessions",
    
    max.results = 10000,
    
    table.id = "ga:1234567890")

    7、绘制热力图

    heatmapData <- t(matrix(as.numeric(ga.data$sessions), nrow = 7))
    
    colnames(heatmapData) <- c("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat")
    rownames(heatmapData) <- 0:23
    heatmap.2(heatmapData, dendrogram="none", Rowv = NA, Colv=NA, col=cm.colors(20), margins=c(5,10), scale="none", trace="none", denscol="red", key.title="", key.xlab = "Sessions")


沪ICP备19023445号-2号
友情链接