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.
free-software
heat-map
Jimmy Breck-McKye
sumber
sumber
Jawaban:
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 ..
sumber
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?
sumber
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.
sumber