5

我正在寻找具有坐标的large示例数据集(最好是 csv 格式) 。lat/lng

PostgreSQL,邮政地理信息系统

4

4 回答 4

6

一个班轮将在 sql 中生成数据:

test=# select POINT(random()*180-90, random()*90-45)from generate_series(1,5);
                point                 
--------------------------------------
 (79.7833853960037,27.2689918940887)
 (27.6489242445678,-9.43540174048394)
 (-51.9591500423849,19.2025181371719)
 (83.5859301500022,31.8948447704315)
 (-56.1149036698043,42.5037826504558)
(5 rows)

您可以轻松地将此查询添加到插入语句,并在必要时为几何添加正确的 Postgis 函数。最后一个数字“5”当然控制将生成多少行。

于 2011-02-21T02:13:38.183 回答
2

根据我的评论,您可以使用此 html 页面生成任意数量的点。

<!DOCTYPE html>
<html lang="en-au">
<head>
    <meta charset="utf-8">
    <meta http-equiv="pragma" content="no-cache" />
</head>
<body>
<script type="text/javascript">
function generatePoints(){
    var pointsToGenerate = document.getElementById('pointsToGenerate').value;

    var output = '';

    for (i=0;i<pointsToGenerate;i++) {
        var multiplier = 10000;
        var latitude=(Math.random()*(90*multiplier))/multiplier;
        var longitude=(Math.random()*(180*multiplier))/multiplier;
        latitude *=(Math.floor(Math.random()*2) == 1)?1:-1;
        longitude *=(Math.floor(Math.random()*2) == 1)?1:-1;
        output = output + latitude + ',' + longitude + '\n';
    }

    document.getElementById('output').innerHTML = output;
}
</script>
<input type="text" id="pointsToGenerate" value="1000" />
<input type="button" onclick="generatePoints()" value="Generate Points" />
<div><textarea cols=40 rows=10 id="output"></textarea></div>
</body>
</html>
于 2011-02-17T23:41:57.327 回答
2

基于随机数据的数据库活动模拟往往是不现实的,因此要小心使用它进行的任何负载或查询测试。如果你真的想要真实坐标的例子,OpenStreetMap 提供的数据集肯定很大。导入TIGER/Line Shapefile是最好的单组样本数据之一,并且可能比已转换为 OSM 格式的更容易处理。

于 2011-02-22T11:43:46.853 回答
0

此 CSV 文件包含 228500 对代表所有国家现实生活中的兴趣点(旅游景点/等)的 lat/long 对:

http://datahub.io/dataset/wikivoyage-listings-as-csv

许可证是 CC-BY-SA。

于 2015-07-24T11:43:37.667 回答