2017-03-03 58 views
6

是否有托管API将纬度和经度转换为Manahttan邻域?将纬度转换为纽约邻域的API

我知道Zillow有shapefile,但我宁愿只是使用API​​。

我看了一个fewquestions。它看起来像纽约开放data也有邻里信息。

我找到最接近找到经纬度API的时间是Districts API,但它似乎不推荐使用,因为它不在它们的API列表中,并且链接重定向到这些列表。

有没有公开API?或者我需要用zillow shapefile创建一个heroku应用并创建自己的?

谷歌地图只在它的地理编码响应返回曼哈顿,而不是在曼哈顿

某一社区
+0

什么你在曼哈顿的 “特定街区” 的意思是?上东区? – geocodezip

+0

@geocodezip是的。 – user2954587

回答

2

可以使用MapBox API反向地理编码和解析获得提取邻居名JSON数据。 我做了一个小例子,你可以从中启发。

代码:

//You can get your access_token if needed from mapbox.com 
 
var access_token = '?access_token=pk.eyJ1IjoibWFwYm94IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw'; 
 
var urlInit = 'https://api.mapbox.com/geocoding/v5/'; 
 
var mode = 'mapbox.places/'; 
 
var type = '&types=neighborhood'; 
 

 
$('#go').click(function() { 
 
    $('#result').html(''); 
 
    lonlatInput = $('#lonlat').val(); 
 
    lonlatInput = lonlatInput.split(','); 
 
    lonlat = lonlatInput[0].trim() + '%2C' + lonlatInput[1].trim() + '.json'; 
 
    getNeighborhood(lonlat); 
 
}); 
 

 
function getNeighborhood(lonlat) { 
 
    var url = urlInit + mode + lonlat + access_token + type; 
 
    $.ajax({ 
 
    type: 'GET', 
 
    url: url, 
 
    success: function(rgeo) { 
 
     var result = rgeo; 
 
     var neighborhood = rgeo.features[0].text; 
 
     $('#result').html(neighborhood); 
 
    }, 
 
    error: function(rgeo) { 
 
     console.log(rgeo); 
 
    } 
 
    }); 
 
}
#result { 
 
    padding: 10px; 
 
    font-size: 2em; 
 
    color: blue; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input type="text" value="-73.945462,40.830182" id="lonlat" /> 
 
<button id="go">Geocode</button> 
 
<div id="result"></div>

this example中的jsfiddle

+0

对不起,我没有看到这个早期给予完整的赏金! @mydsi – user2954587

3

有一对夫妇到你的目标,例如CartoDB集成兵位置APIgeopy解决方案, 地理编码器,SmartyStreets API等。

让我们利用这个CartoDB探索:

经度创建一个文件,并在纽约纬度坐标。

使用来自Zillow

的纽约街区几何文件上传文件到Cartodb和geoencode经度和纬度坐标为,经度几何对象和纬度坐标文件。

从文件中运行以下SQL查询:

SELECT a.*, 
     b.neighborhood 
FROM inputFileName 
as a, 
    nyc_pediacities_neighborhoods_v3_polygon as b 
WHERE ST_Within(a.the_geom,b.the_geom) 

我们正在创建的两个对象,inputFileashapefileb,再搭配几何形状对彼此有WHERE子句。

我们正在创建一个新列,其中的行表示同一行的经度和纬度的纽约邻域。

只需以理想的格式导出文件并享受信息。

人们可以使用他们的集成之一轻松自动化过程。这将作为理想的API。见this

蟒蛇包geopy也值得关注。检查this

使用Bing位置API可以实现相同的结果。请参阅API

另一个可行的解决方案是从打开的数据构建您自己的API

检查geocoderSmartyStreets