Mendapatkan shapefile sungai dari OpenStreetMap?


11

Saya tidak ingin mengunduh seluruh peta suatu daerah. Saya hanya ingin sungai dan waterbodies lain hadir di suatu area di shapefile sehingga saya dapat menggunakannya di QGIS. Saya mencoba geofabrik tetapi memberikan seluruh peta dan juga negara penuh sementara saya membutuhkan data kota. Saat ini saya sedang mencoba JOSM. akan memperbarui Anda ketika akan berfungsi.


apa bidang yang diminati?
Mapperz

1
Natural Earth Rivers mungkin menjadi sumber yang lebih baik naturalearthdata.com/downloads/10m-physical-vectors/…
Mapperz

Sayangnya Bumi alami tidak mengandung data India.
user30783

Ini adalah area di mana saya membutuhkan semua waterbodies.
user30783

Jawaban:


24

Gunakan API Overpass Turbo !

Pertama, saya akan pergi ke openstreetmap.org ,

Anda juga bisa

1) Cari fitur yang Anda cari. Saya memilih "sungai platte selatan", yang mengalir melalui Denver. Ini memberi bidang dan tag yang digunakan oleh OSM untuk menyimpan data:

masukkan deskripsi gambar di sini

2) Identifikasi tag dan nilai fitur yang Anda cari

  1. Memperbesar sepenuhnya ke peta
  2. Klik pada ikon lapisan di sebelah kanan (tiga lembar kertas)
  3. Klik pada entri menu terakhir ( Map dataatau sesuatu yang serupa dalam bahasa Anda)
  4. Fitur pada peta berubah menjadi biru (pastikan Anda memperbesar cukup jauh untuk melihat
  5. Klik pada fitur yang Anda cari
  6. Tag dan Nilai muncul di sisi kiri layar, dan Anda dapat melanjutkan di bawah ...

masukkan deskripsi gambar di sini

Lalu pergi ke halaman Overpass Turbo, lalu klik Wizard

Dengan menggunakan informasi, nilai namanya adalah South Platte River, dan nilai jalur air adalah sungai, sehingga Anda dapat membuat kueri seperti ini:

name="South Platte River" and waterway=river

Lalu klik "bangun dan jalankan kueri"

masukkan deskripsi gambar di sini

Kueri akan berjalan dan hasilnya akan ditampilkan di peta:

masukkan deskripsi gambar di sini

Selanjutnya klik opsi "Ekspor":

Saya suka opsi geoJSON

Klik "Simpan"

Buka file di QGIS, dan pergilah!

masukkan deskripsi gambar di sini

Anda dapat melakukan 'save as' untuk menyimpannya sebagai tipe baru layer vektor ...

Dalam kasus Anda, Anda juga bisa menggunakan waterway=riverkueri untuk mendapatkan semua sungai di daerah yang Anda cari, dan Anda bisa menggambar kotak pilihan manual untuk mempersempit geografi.

masukkan deskripsi gambar di sini

@underdark menunjukkan ini padaku.


Terima kasih atas usaha Anda tetapi saya masih tidak dapat mengikuti Anda. Saya ingin waterbodies di daerah ini . Apa yang harus saya tulis di halaman web turbo layang?
user30783

Saya baru saja memperbarui jawaban di atas: di API layang, gunakan alat temukan kecil untuk menemukan Haldwani, India. Kemudian gunakan 'manual pilih bbox' untuk menggambar di sekitar area yang Anda inginkan, kemudian gunakan wizard untuk menjalankan jalur air = permintaan sungai ... Anda mungkin men-tweak untuk menemukan beberapa fitur lain menggunakan halaman OSM yang saya sebutkan di atas, kemudian membangunnya ke dalam permintaan pada Overpass.
DPSSpatial

Terima kasih banyak. Tapi saya masih punya 1 masalah. hanya memilih sungai. Saya ingin danau di dalamnya juga.
user30783

beri saya contoh danau yang Anda cari ... nama ...
DPSSpatial

1
baik. Saya akan mencoba plugin osm. Terima kasih atas waktunya. Itu sangat membantu ..
user30783

6

Plugin QuickOSM baru untuk QGIS menyediakan GUI yang bagus untuk menggunakan Overpass API. Anda dapat menentukan pasangan nilai kunci yang Anda inginkan dan juga menawarkan cara yang ramah pengguna untuk memfilter berdasarkan lokasi: baik kotak pembatas atau bahkan dengan hanya menentukan nama wilayah seperti "Austria" untuk fitur dalam batas Austria.


4

Anda dapat memfilter data OSM Anda dengan GDAL dengan membatasi kotak dan dengan atribut dan menyimpan hasilnya secara langsung ke dalam format vektor apa pun yang didukung oleh GDAL. Instal GDAL versi 1.10 atau lebih tinggi dan baca halaman manual driver OSM http://www.gdal.org/drv_osm.html dan ogr2ogr http://gdal.org/ogr2ogr.html . Tugas ini dengan sungai dan danau dapat dilakukan dengan pengaturan default tetapi sering kali perlu mengedit file osmconf.ini terlebih dahulu.

Sungai dapat ditemukan dari data OSM dengan tag "jalur air = sungai" dan GDAL menyimpannya ke dalam lapisan "garis". Danau yang Anda temukan dengan "alami = air" dan mereka pergi ke lapisan "multipoligon". Jika tujuan Anda adalah membuat shapefile, Anda harus menyimpan sungai dan danau ke file yang berbeda karena garis dan poligon tidak dapat disimpan ke dalam shapefile yang sama.

Contoh di bawah ini menggunakan file india-latest.osm.pbf dari geofabrik. Perintah dasar untuk digunakan:

ogr2ogr -f "ESRI Shapefile" -spat 76 22 77 23 -sql "select * from lines where waterway='river'" rivers.shp india-latest.osm.pbf --config ogr_interleaved_reading yes

ogr2ogr -f "ESRI Shapefile" -spat 76 22 77 23 -sql "select * from multipolygons where natural='water'" lakes.shp india-latest.osm.pbf --config ogr_interleaved_reading yes

Tempatkan BBOX Anda sendiri ke dalam parameter -spat di EPSG: 4326 unit.

Ogr2ogr fleksibel dan memiliki banyak opsi. Baca halaman manual dengan seksama.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.