Bagaimana saya bisa mengubah data saya menjadi peta panas / intensitas peta?

14

Saya memiliki basis data yang melacak sejumlah besar entitas. Setiap entitas memiliki 'area cakupan' atau 'area tangkapan' - radius dalam mil dari kode pos UK yang ditentukan, misalnya

Leyton office     4.3m    E11 4LL
Stratford office  5.2m    E15 6ZZ
East Ham office   2.1m    E4 8QQ

Saya ingin mengubahnya menjadi peta intensitas geografis - peta wilayah yang dinaungi atau diwarnai untuk menunjukkan jumlah entitas yang mencakup setiap titik pada peta. Segmentasi ke daerah-daerah kecil juga dapat diterima.

Ini mungkin proyek sekali saja, jadi tidak mungkin organisasi saya akan menyediakan uang untuk membeli perangkat lunak. Itu berarti nol atau setidaknya solusi berbiaya rendah lebih disukai.

Jimmy Breck-McKye
sumber
3
Saya pikir Anda perlu memberikan beberapa informasi lebih lanjut. Apa format basis data Anda? Seberapa kompetenkah Anda dengan paket GIS / database spasial? Apakah data Anda sudah ada dalam format file shapefile / GIS lain atau Anda tahu cara mengubahnya? Sulit untuk menjawab tanpa konteks ini karena itu bisa menjadi jawaban yang sangat besar!
Stev_k
Basis data saya sebenarnya adalah PostgreSQL db, tetapi saya dapat menarik feed dalam bentuk CSV. Ini benar-benar tidak lebih dari data yang saya cantumkan dalam pertanyaan di atas - cukup sederhana. Sedangkan untuk GIS, ini mungkin pertama kalinya saya menemui bidang ini, dan saya benar-benar tidak tahu apa-apa tentang alat GIS yang umum. Juga, saya tidak punya shapefile, tidak.
Jimmy Breck-McKye

Jawaban:

8

Mungkin tautan ini akan membantu Anda:

Bagaimana cara membuat peta panas yang efektif?

dengan QGIS: http://alexsciuto.com/blog/2010/11/how-to-make-your-own-heat-map-pt-1-gathering-the-materials/

Skrip Python: http://www.sethoscope.net/heatmap/

http://sk53-osm.blogspot.com/2011/01/heat-maps-from-osm-pois.html

Maaf untuk jawaban yang tidak diuraikan ..

Pedro Mendes
sumber
Itu adalah beberapa sumber yang bagus dan saya pasti akan memeriksanya.
Jimmy Breck-McKye
alexsciuto.com/blog/2010/11/... : Saya belum menemukan bagian 2 dari metode yang dijelaskan tetapi tampaknya bukan merupakan peta panas. Hanya peta choropleth yang sangat mendasar ...
simo
4

Saya berasumsi Anda menginginkan peta kerapatan dari seberapa "tertutup" setiap area, yaitu berapa banyak kantor yang dekat, yang menggabungkan "jari-jari" dari kantor-kantor itu?

Anda sebenarnya dapat melakukan semua ini dalam PostgreSQL, atau setidaknya dalam PostGIS , yang merupakan ekstensi gratis. Saya sarankan Anda memahami itu, dan membaca beberapa dokumen.

Anda mungkin perlu melakukan geocode kode pos Anda. Sebuah solusi sederhana adalah mengunduh dataset Point Code Ordnance Survey ( https://www.ordnancesurvey.co.uk/opendatadownload/products.html ) (yang gratis) dan berikan poin Anda database lokasi lokasi kode pos, dengan menggunakan PostGIS fungsi - Anda harus menggunakan ST_GeomFromText () dan membaca tentang koordinat Teks yang Diketahui Mungkin.

Jadi, Anda harus memiliki tabel spasial dari semua poin Anda.

Anda kemudian dapat buffer (membuat radius di sekitar setiap titik) mereka ke dalam tabel spasial baru menggunakan fungsi ST_Buffer.

Anda kemudian perlu membuat overlay poligon yang tidak tumpang tindih di PostGIS - lihat Memisahkan poligon berdasarkan persimpangan menggunakan PostGIS . Ini harus mengelompokkan dataset menjadi wilayah kecil seperti yang Anda katakan di atas.

Maka Anda perlu menanyakan berapa banyak buffer yang memotong setiap wilayah tersegmentasi Anda yang baru. Ini akan menjadi query SQL yang cukup rumit, tetapi harus dimungkinkan.

Ini adalah prosedur yang cukup rumit karena Anda dapat melihat bahkan untuk seseorang yang berpengalaman dalam GIS, dan ada banyak jebakan, seperti proyeksi dll, jadi saya akan mempertimbangkan kebutuhan Anda untuk ini sebelum memulai, namun mungkin ada solusi yang lebih baik bahwa orang lain dapat menawarkan.

Cara yang jauh lebih mudah adalah mengambil kisi-kisi titik yang berjarak secara teratur dan menghitung jarak rata-rata untuk mengatakan, lima kantor terdekat, dan kode warna setiap kotak dengan jarak rata-rata. Namun, ini tidak akan memperhitungkan "radius" kantor - tidak yakin apa yang diwakilinya - pengaruh?

Stev_k
sumber
2

Anda dapat melakukan ini secara online dengan menggunakan Mapsdata.co.uk

Aplikasi ini membaca data dari .xls atau .csv dan telah diprogram untuk mengonversi data-geo seperti UK Postcodes. Anda bisa melakukan beberapa visual: satu bisa berupa peta gelembung menggunakan area tangkapan sebagai nilai, pin dengan opacity untuk menunjukkan kepadatan, atau peta panas. Di semua opsi, Anda dapat mengubah opacity, warna, dll dan kemudian mengekspor baik sebagai PNG atau sebagai iframe html untuk digunakan di halaman web lain.

Apakah Anda perlu melakukan georeferensi ukuran gelembung? Ini juga dapat dicapai dengan beberapa penyesuaian.

pengguna15786
sumber