[osm-hu] Házszám nélküli utcák
Miklos Vajna
vmiklos at vmiklos.hu
2015. Május. 31., V, 17:30:42 UTC
Szia!
On Sat, May 30, 2015 at 11:57:16PM +0200, Imre Samu <pella.samu at gmail.com> wrote:
> Nem tudom, hogy ismered, de az *ITO* -nak van egy házszámos rétege, itt a
> sok "szürkét" kell keresni:
> "Building information in OpenStreetMap colour-coded as to whether they have
> addresses or names associated or do not have an address."
> http://www.itoworld.com/map/9?lon=19.04726&lat=47.50315&zoom=14
Nem, nem ismertem, ez tök jó vizualizáció. :)
> Ha mindenképpen az overpass API -al akarod lekérdezni, akkor egy extrém
> fapados megoldás, amit adaptálni kell:
> - Lábatlani addr: utca,hászám -> csv-be http://overpass-turbo.eu/s/9Fn
Köszi, végül ezzel összeraktam. Az utca,házszám listát a fenti alapján,
a region-ön belüli utcalistát a
http://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_API_by_Example#List_of_Streets
alapján (ld. csatolt query), és utána egy egyszerű scripttel (szintén
csatolom, hátha érdekes valakinek) már tudom listázni azokat az utcákat
amikhez egyetlen házszám sincs.
> Egyébként merre viszed fel a házszámokat ?
Egyelőre Sasad utcáit szeretném bejárni:
http://www.openstreetmap.org/relation/2714372#map=15/47.4744/19.0045
Kb. a harmadukhoz van jelenleg házszám. Egyben a fenti scripttel egyből
találtam is olyan házszámot amihez nincs vagy nem létező utca van
rendelve, bár tippelek, hogy erre már van valahol ellenőrző eszköz. ;)
Üdv,
M.
--------- következő rész ---------
#!/usr/bin/env python3
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
import sys
def main():
sock = open("out/streets.csv")
first = True
streets = []
for line in sock.readlines():
if first:
first = False
continue
cols = line.strip().split("\t")
streets.append(cols[1])
streets = sorted(set(streets))
sock.close()
sock = open("out/street-housenumbers.csv")
first = True
streetsWithHouses = []
for line in sock.readlines():
if first:
first = False
continue
cols = line.strip().split("\t")
if len(cols[1]): # FIXME data to fix in OSM
streetsWithHouses.append(cols[1])
streetsWithHouses = sorted(set(streetsWithHouses))
sock.close()
streetsWithoutHouses = [street for street in streets if street not in streetsWithHouses]
# FIXME data to fix, too?
# assert len(streets) == len(streetsWithHouses) + len(streetsWithoutHouses)
# for street in streetsWithHouses:
# print(street)
if "-s" in sys.argv:
print("%s streets in total." % len(streets))
print("%s streets have at least one house number." % len(streetsWithHouses))
print("%s streets have no house number." % len(streetsWithoutHouses))
print("Coverage is %s%%." % round(float(len(streetsWithHouses)) * 100 / len(streets)))
else:
for street in streetsWithoutHouses:
print(street)
if __name__ == "__main__":
main()
# vim:set shiftwidth=4 softtabstop=4 expandtab:
--------- következő rész ---------
[out:csv(::id, name)] [timeout:425];
area[name="Sasad"];way(area)[highway][name];out;
--------- következő rész ---------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.openstreetmap.org/pipermail/talk-hu/attachments/20150531/f2d37988/attachment.sig>
További információk a(z) Talk-hu levelezőlistáról