我已经能够获得有关一系列普查概念的选举病房的有效数据。
然而,这些数据的地理范围太大(这是选区病房 - 大都会我相信)。我想要我能得到的最小/最细粒度的数据,并相信较低的超级输出层LSOA代表了这一点。但是,当我调整对该地理层次结构的API调用时,例如
我得到以下回复
'404 INTERNAL ERROR:数据集QS201EW用于上下文人口普查和层次结构2011LSOAH未找到'
这是为什么?数据是否不适用于此地理层次结构,或者我的API调用是否有问题?感谢您的帮助。
答案 0 :(得分:0)
感谢其他地方的帮助,我有一个答案。问题是我定义为2011LSOAH的地理层次应该是2011STATH。较低的超级输出层是“统计层次结构”的一部分。
我还发现通过使用ONS的数据资源管理器here,可以为任何给定的查询构建API网址。
答案 1 :(得分:0)
我可以稍后添加一些额外的提示:
获取一个或多个命名的LSOA的数据....
获取洛杉矶境内的所有LSOA
这使用替代pdm / {父区域代码} = {子区域类型列表}语法。
父区域代码也可以是祖父母或祖先的祖先。您可以通过这样的调用获取潜在父母区域的代码 http://data.ons.gov.uk/ons/api/data/hierarchy/QS601EW.xml?context=Census&apikey=12345&geog=2011WARDH&levels=0,1,2,3,4,5,6
另一个PDM示例:获取东南地区所有地方当局(任何类型)的男性人数并返回JSON-Stat:
请注意,使用NeSS服务获取邮政编码区域的替代方法,您可以使用ArcGIS。首先调用ESRI世界服务以获取邮政编码或地名的x和y坐标,然后对ONS ArcGIS服务进行查询以返回其所在的管理区域的名称/代码:
function getCentroid() {
var searchstring = document.getElementById("postcodeorplace").value;
var testURL = "http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/find?text=" +
searchstring + "&outFields=*&bbox=%20-5.4188710000000002,49.865400000000001,%201.7641,55.813870000000001&sourceCountry=GBR&outSR=27700&f=json&maxLocations=6";
getJSONResponse1(testURL);
}
function getExtCode() {
var layer = document.getElementById("layerpicker");
var layerval = layer.options[layer.selectedIndex].value;
var xpos = document.getElementById("xcoord").value;
var ypos = document.getElementById("ycoord").value;
var testURL = "http://services1.arcgis.com/ESMARspQHYMw9BZ9/ArcGIS/rest/services/" + layerval + "/FeatureServer/0/query?returnGeometry=false&outFields=*&geometryPrecision=0&f=json&geometry=" +
xpos + "," + ypos + "&geometryType=esriGeometryPoint&inSR=27700"
getJSONResponse2(testURL);
}