Bu alanların "yarıçapını" birleştirerek, her alanın ne kadar "iyi kapsanmış", yani kaç tane yakın ofis olduğunu gösteren bir yoğunluk haritası istediğinizi varsayıyorum?
Tüm bunları aslında PostgreSQL içinde veya en azından ücretsiz bir uzantı olan PostGIS içinde yapabilirsiniz . Bunu tutmanızı ve bazı dokümanları okumanızı öneririm.
Muhtemelen posta kodlarınızı coğrafi olarak kodlamanız gerekecektir. Basit bir çözüm, Ordnance Survey Code Point veri kümesini ( https://www.ordnancesurvey.co.uk/opendatadownload/products.html ) (ücretsizdir) indirmek ve PostGIS kullanarak puanlarınıza veritabanına bir posta kodu konumu vermektir. fonksiyonları - ST_GeomFromText () kullanmanız ve Muhtemelen Bilinen Metin koordinatları hakkında bilgi edinmeniz gerekir.
Yani tüm noktalarınızın uzamsal bir tablosuna sahip olmalısınız.
Daha sonra ST_Buffer işlevini kullanarak bunları yeni bir uzamsal tabloya arabelleğe alabilirsiniz (her nokta etrafında bir yarıçap oluşturabilirsiniz).
Daha sonra PostGIS'de çakışmayan bir çokgen yer paylaşımı oluşturmanız gerekir - PostGIS kullanarak kesişmeye dayalı ayrı çokgenler konusuna bakın . Bu, veri kümesini yukarıda belirttiğiniz gibi küçük bölgelere ayırmalıdır.
Ardından, kaç tane arabellek ile yeni bölümlenmiş bölgenizin her birini kesiştiğini sorgulamanız gerekir. Bu oldukça karmaşık bir SQL sorgusu olacaktır, ancak mümkün olmalıdır.
Bu, CBS'de deneyimli biri için bile görebileceğiniz gibi oldukça karmaşık bir prosedürdür ve projeksiyonlar vb. teklif.
Çok daha kolay bir yol, düzenli olarak aralıklı bir nokta ızgarası almak ve en yakın beş ofisi söylemek için ortalama mesafeyi çalışmak ve her ızgara karesini ortalama mesafeye göre kodlamak olabilir. Ancak bu, ofislerin "yarıçapını" - bunun neyi temsil ettiğinden emin değil - etkisini dikkate almaz mı?