将COUNT图表添加到Fusion Tables中查询的地图可视化中

时间:2013-12-20 16:56:05

标签: google-fusion-tables

我在Fusion Tables地图中添加了一个滑块,用于生成查询: http://jsfiddle.net/nautilia/8zwGP/1/

slide: function (event, ui) {
    document.getElementById("slider-value").innerHTML = "año " + ui.value;
    var suma = "start > 1900 AND start <" + ui.value + " AND end >" + ui.value;
    capa.setOptions({
        query: {
            select: "col8",
            from: "1BV8lFXocqLor3Mack66ld82zSmUeHPyzKeCSK_w",
            where: suma
        }
    });
}

这是一个城市电影院的列表。滑块查询表格以了解所选年份中哪些电影院已打开。

我想在地图旁边添加一个元素,告诉那一年有多少个电影院(点)是开放的(在地图中显示)。

我尝试了多次尝试失败,尝试将Fusion Tables API https://developers.google.com/fusiontables/docs/sample_code?hl=ca&csw=1#gviz和本教程http://michelleminkoff.com/2012/02/05/how-to-count-queried-rows-in-a-google-fusion-table/中的代码与我的代码混合。

我真的不知道如何使用现有代码获取ui.value(year)的查询输出(COUNT())。 而且我都不能把它作为一个条形或简单地显示出来。

我很困惑,无法实现正确的代码。任何帮助将不胜感激。

提前谢谢

1 个答案:

答案 0 :(得分:1)

您需要通过另一个jsonp调用异步地根据您的slder查询(或您需要创建全局的var suma)获取计数。我刚才回答:https://stackoverflow.com/a/16217367/1211981无法通过滑块处理程序获取此值。您需要一个单独的函数FT API调用来获取计数并在事后设置它。

var count_qry = 'select count() from "1BV8..." where ' + suma;

请参阅此答案https://stackoverflow.com/a/9778985/1211981并查找getFTCount()函数。注意:此代码早于FT API 1.0,因此AJAX端点已更改。

添加代码:我的评论如下。改变这个:

var getCount = $.get(queryurl,

    function (data) {
        try {
     .. .

要:

function getCount(){
   $.get(queryurl,
    . . .
}

然后在此行之后添加getCount()。

window.suma = "start > 1900 AND start <" + ui.value + " AND end >" + ui.value;
getCount();