Google visualization 融合表层查询永久磁贴加载问题
几年来,我一直定期使用Google Fusion表,尽管我还是个新手 我最近负责查询我的一个关于地理空间关系的表。我发现了一个很好的例子,它的功能完全符合我的需要,并用我的tableId更新了代码,确保了location列的拼写、大小写等完全相同,但是当我尝试更新地图图层时,它给了我一个永久的数据,可能仍然在加载。拖动或刷新以找到答案!在瓷砖上。我的表是公开的,数据可以下载。。。我不确定我错过了什么 我被难住了。我已经包含了下面的代码,并简单地使用//从示例中禁用了tableid 如有任何帮助/建议,将不胜感激! ~z~妮可Google visualization 融合表层查询永久磁贴加载问题,google-visualization,google-fusion-tables,Google Visualization,Google Fusion Tables,几年来,我一直定期使用Google Fusion表,尽管我还是个新手 我最近负责查询我的一个关于地理空间关系的表。我发现了一个很好的例子,它的功能完全符合我的需要,并用我的tableId更新了代码,确保了location列的拼写、大小写等完全相同,但是当我尝试更新地图图层时,它给了我一个永久的数据,可能仍然在加载。拖动或刷新以找到答案!在瓷砖上。我的表是公开的,数据可以下载。。。我不确定我错过了什么 我被难住了。我已经包含了下面的代码,并简单地使用//从示例中禁用了tableid 如有任何帮助/
当您看到数据可能仍在加载时。消息它通常表示您的查询无效 您的示例有一个旧的数字表id。新加密表id的语法不同,如下所示 致: 以及您在updateQuery中的查询:
query = {
select: 'address',
from: tableid,
limit: limit,
orderBy: ST_Distance(address, LATLNG(" + lat + ',' + lng + "))"
}
layer.setQuery(query);
代码段:
变量表ID='11QnfV_1v3N5GQs70e13SRxGR6_zyosfjlcmpud3c';
//var tableid=790805;
var latlng;
函数初始化{
map=new google.maps.Mapdocument.getElementById'map\u canvas'{
中心:新google.maps.LatLng30.35,-97.70,
缩放:10,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
google.maps.event.addListenermap,“单击”,functionevent{
latlng=event.latlng;
更新数据库;
};
查询={
选择“地址”,
发件人:tableid
};
图层=新建google.maps.FusionTablesLayer{
查询:查询
};
layer.setMapmap;
}
google.maps.event.AddDomainListenerWindow“加载”,初始化;
函数updatequalylatlng{
var limit=document.getElementById'limit'。值;
查询={
选择“地址”,
发件人:tableid,
极限:极限,
订购人:“ST_距离地址,LATLNG”+LATLNG.lat+,“+LATLNG.lng+
}
layer.setQueryquery;
var queryObj=layer.getQuery
var queryStr=from:+queryObj.from+;
queryStr+=select:+queryObj.select+;
queryStr+=限制:+queryObj.limit+;
queryStr+=orderBy:+queryObj.orderBy+;
document.getElementById'query'.innerHTML=queryStr;
}
html,
身体{
字体系列:Arial,无衬线;
填充:0px;
边际:0px;
身高:100%;
宽度:100%;
}
地图画布{
身高:80%;
宽度:100%;
}
工作示例在哪里?非常感谢@geocodezip!!我完全忽略了FusionTablesLayer{query:query};还有一个问题。当我运行代码并单击地图上的一个点以引用Lat/Lng来更新查询时,orderby ST_距离似乎没有正确触发,因为地图显示的是随机的50个位置,而不是所选Lat/Lng点的最近邻居。我错过了什么?作为测试,我将代码编写为一个带有设置限制和设置Lat/Lng的简单查询,并删除了查询更新函数,我仍然得到随机的50个位置,而不是最近的邻居。帮助?我的示例中有几个错误。已修复、更新的FIDLE和代码段orderby应为orderby,LatLng应为LatLng,orderby子句中缺少。谢谢!非常感谢。非常感谢。 Constructor Description FusionTablesLayer(options:FusionTablesLayerOptions) A layer that displays data from a Fusion Table.
query = {
select: 'address',
from: tableid
}
layer = new google.maps.FusionTablesLayer(tableid);
layer.setMap(map);
query = {
select: 'address',
from: tableid,
};
layer = new google.maps.FusionTablesLayer({query: query });
layer.setMap(map);
query = {
select: 'address',
from: tableid,
limit: limit,
orderBy: ST_Distance(address, LATLNG(" + lat + ',' + lng + "))"
}
layer.setQuery(query);