Etkili ısı haritaları oluşturmak?


65

ArcGIS, QGIS, Grass ve / veya GVSIG'i kullanma:

  • Etkili ısı haritaları oluşturmak için kullanılan araç ve işlemlerden bazıları nelerdir?
  • Eklentiler nelerdir?
  • Başlıca veri gereksinimleri nelerdir?
  • Mevcut ısı haritalarındaki kusurlardan bazıları nelerdir?
  • Isı haritalarının etkili bir şekilde kapsayamayacağı konulardan bazıları nelerdir?
  • Isı haritası nasıl yapılmaz?
  • Veri sunumu için ısı haritasından daha iyi alternatifler var mı (aynı bağlamda)?

Belirttiğiniz araçlardan herhangi birini kullanmamasına rağmen, bu Python betiğine de bir göz atmak isteyebilirsiniz, jjguy.com/heatmap
radek

1
Dassouki, "ısı haritası" ile ne demek istediğini açıklayabilir misin? Vikipedi , bir dizi değerin choropleth yorumu olduğunu düşünüyor. Bu, incelikle, ancak daha da önemlisi, bu konudaki tüm cevaplardan farklıdır; bunun basitçe herhangi bir ızgara (veya resim) temelli özniteliğin, özellikle de nokta verilerinden ızgaraya enterpolasyonlu olanın bir haritası olduğu anlamına gelir. Madde imli sorularınızın her birine cevaplar gerçek bir ısı haritası için farklı olacaktır.
whuber

Yanıtlar:


74

Bu soru Topluluk Wiki'sine dönüştürüldü ve wiki kilitlendi, çünkü cevapların bir listesini arayan ve kapatılmasını engellemek için yeterince popüler görünen bir soru örneği. Özel bir durum olarak ele alınmalı ve bu konuda ya da herhangi bir Stack Exchange sitesinde teşvik edilen bir soru türü olarak görülmemelidir, ancak daha fazla içeriğe katkıda bulunmak istiyorsanız, bu cevabı düzenleyerek bunu yapmaktan çekinmeyin .


En az iki çeşit ısı haritası vardır:

  1. Nokta konsantrasyonunu temsil eden ısı haritaları ve
  2. Özellik değerlerinin dağılımını temsil eden ısı haritaları

Her yöntemin avantajları ve problemleri var, korkarım ki ayrıntıya girmek bu soru-cevapın çok ötesinde.

QGIS ve GRASS için bazı metot ve fonksiyonları listelemeye çalışacağım.

Noktaların konsantrasyonu

Yaban hayatı, araçların, vs. hareketlerini izliyorsanız, yüksek konum mesajı konsantrasyonlu bölgeleri değerlendirmek faydalı olabilir.

Araçlar: örn. QGIS Heatmap eklentisi (> 1.7.x sürümlerinde mevcuttur) veya GRASS v.neighbors veya v.kernel

Öznitelik değerlerinin dağılımları

Burada temel olarak enterpolasyon yöntemleri hakkında az ya da çok konuşuyoruz. Yöntemler şunları içerir:

  1. IDW

    Uygulamaya bağlı olarak bu, küresel (setteki tüm mevcut noktaları kullanarak) veya yerel (puan sayısı veya puanlar ve enterpolasyonlu pozisyon arasındaki maksimum mesafe ile sınırlı) olabilir.

    Araçlar: QGIS enterpolasyon eklentisi (global), GRASS v.surf.idw veya r.surf.idw (yerel)

  2. Splaynlar

    Yine, çok sayıda olası uygulama. B-Splines popülerdir.

    Araçlar: GRASS v.surf.bspline

  3. Kriging

    Çeşitli alt tiplerde istatistiksel yöntem.

    Araçlar: GRASS v.krige (uç için om_henners sayesinde) veya R kullanarak


1
GRASS'ın kriging için bir arayüzü var, v.krige ( grass.osgeo.org/wiki/V.krige_GSoC_2009 ), ama yine de R ve GRASS Wiki sayfasında belirtilen çeşitli R paketleri ve ciltlemeleri gerekiyor.
om_henners

QGIS 2.8'den beri nokta katmanları için bir Heatmap oluşturucu var. Yeni veri oluşturmanıza gerek yok.
Alexandre Neto

34

İstatistiksel olarak, işte bir ısı haritası yapma yolunda gitmeniz gerekenler:

1) Nokta özelliklerini entegre edin . Entegrasyon fikri, tesadüf olarak kabul edilmesi gereken noktaları ele almak ve onları tek bir konum olarak birleştirmek. En yakın komşu analizini ve oradan uygun bir değer kullanmayı seviyorum . (Örneğin, bir suç ısı haritası yaparken , suçların kodlandığı temel parsel veri kümesi için ortalama en yakın 1. komşuyu kullanıyorum).

2) Olayları toplayın . Bu, tüm entegre puanlarınız için mekansal bir ağırlık oluşturur. Örneğin, tek bir yerde 5 etkinliğiniz varsa, ağırlık 5 ile bir puan olur. Bu, sonraki iki adım için çok önemlidir. Havuzlanan olaylarda bir öznitelik toplamalısınız, yani farklı olayların ağırlığı daha yüksekse, bire bir mekansal birleşim kullanabilirsiniz . Hedef olarak 'collect event' çıktısını ve join özellikleri olarak orijinal tümleşik etkinliklerinizi kullanın. Alan haritası birleştirme kurallarını, tümleşik olaylardaki özniteliği istatistiksel olarak birleştirdi (diğer istatistikleri kullanmanıza rağmen normalde bir SUM ile) ayarlayın.

3) Global Moran’ı I kullanarak en üst uzamsal otokorelasyonu belirleyin . Aynen dediği gibi, yaptığınız analize uygun ölçekte zirve uzaysal otokorelasyon bandını belirlemek için farklı aralıklarla global moran'ın I'sini çalıştırın. Moran'ın I testlerinin başlangıç ​​aralığını belirlemek için toplanan etkinliklerinizde tekrar en yakın komşuyu çalıştırmak isteyebilirsiniz. (örneğin, en yakın ilk komşu için maksimum değeri kullanın)

4) Getis-Ord Gi * 'yi çalıştırın . Moran'ın I analizine göre sabit bir mesafe bandı kullanın ya da kayıtsızlık bölgesi olarak sabit mesafe bandını kullanın. Toplama olaylarından uzamsal ağırlığınız, sayısal sayma alanınızdır. Bu, setinizdeki her etkinlik noktası için size z puanı verecektir.

5) Run IDW * GETIS-Ord Gi adresinin sonuçların karşı.

Bu sonuç, çekirdek yoğunluğu ile elde ettiğinizden önemli ölçüde farklıdır. Bu, çekirdek yoğunluğundaki gibi, kümelenmeden bağımsız olarak, yalnızca değerlerin yüksek olduğu değil, yüksek değerlerin ve düşük değerlerin birlikte kümelendiğini gösterir.


20

Isı haritalarını sevsem de, çoğunlukla yanlış kullanıldıklarını fark ediyorum.

Genelde gördüğüm, her pikselin renginin bir nokta koleksiyonuna uygulanan ters mesafe ağırlıklı bir fonksiyonun sonucuna dayandığı bir işlemdir . Ne zaman bir haritanın üst üste binen nokta işaretçileri varsa, bir ısı haritası düşünmeye değeceğini düşünüyorum.

İşte web tabanlı bir api .

GeoChalkboard'un bunun için iyi bir rehberi var .

IDW'yi ArcGIS'te kullanabilirsiniz .


7
IDW'nin veri toplama konumlarına oldukça duyarlı olduğunu unutmayın. Veriler kümelenmişse, örneğin, potansiyel olarak kötü matematiksel anormallikler elde edersiniz.
Reed Copsey

@Reed Copsey Hangi alternatifi önerirsiniz?
fmark

2
@fmark: Doğal komşu / nirengi temelli yaklaşımlar, Kriging, splining / minimum tansiyon vb. dahil IDW yerine kullanabileceğiniz birçok enterpolasyon rutini var.
Reed Copsey

@Reed Isı haritalarının matematiksel doğruluğu hakkında gerçekten hiç endişelenmedim (belki de olmalıyım). Ancak birçok durumda kümeleri yararlı bir şekilde ilettiklerini düşünüyorum. İşte yararlı bir şekilde ısı
Kirk

2
Bence harika bir araç. Matematiksel / istatistiksel doğruluk muhtemelen sadece karar verme için sonuçları kullanıyorsanız önemlidir, ancak dağıtımın genel anlamını yansıtıyorsa, IDW muhtemelen iyidir. (Isı haritası sonuçlarında, özellikle matematiksel anomaliler nedeniyle kümeler arasında büyük "çarpıklıklara" neden olan kümelenmeler meselesidir.)
Reed Copsey

12

Basit ısı haritaları ve üretim hattı hatları için QGis'i Grass entegrasyonu ile kullandım:

  1. Veri noktalarını yükle
  2. Sınırlayıcı bir şekil yükleyin - örneğin ilçe sınırı
  3. Bir Çim harita seti oluşturma
  4. Grass araç kutusunu açın ve her bir aracı aramak için modül listesine tıklayın
  5. V.in.ogr.qgis modülünü yükleyin ve her biri için çıktı görünümünü hatırlamayı her zaman hatırlatarak hem nokta verilerini hem de sınır şeklini yükleyin - her birine pointdata ve maskshape gibi faydalı bir ad verin
  6. Maske şeklini v.to.rast ile maske olarak kullanmak ve harita setine eklemek için maskeyi raster haline dönüştürün - buna maskraster gibi bir şey söyleyin - bu karmaşık çokgenler için zaman alabilir.
  7. Tampon bölge ile sınırlı bir sonraki eylemi zorlamak için r.mask modülünü yükleyin .
  8. Run v.surf.rst bir interpolated ızgara üretmek için pointdata - interpolasyon yapmak için nitelik alanı olarak uygun sütun seçmek ve benzeri bir şey aramak rastersurface . Bu zaman alan ve ısı haritası için kullanılabilecek veya 3B gölgeli olabilen bir raster oluşturan bittir.
  9. Çim araç kutusunu kapatın
  10. Giriş olarak GRASS rasterini seçerken GDAL Raster Contours eklentisini kullanın; varsayılan seviyelerin değerini 10 olarak bırakın ve konturların shapefile dosyasının kaydedileceği bir çıktı dizini seçin. “Öznitelik Adı” nı kontrol edin ve bir ad yazın.

Not: Bunun çalışması için, veri kümelerinin aynı projeksiyonda olması gerekir!


4

Bence bu soru, meselelerle ilgili birkaç nokta dışında büyük ölçüde cevaplandı.

Isı haritaları harika olabilir, ancak klasik bir kusur ve sorun yorumda yatmaktadır. Suç oranı / oran haritasına kıyasla (ısı veya başka şekilde) suç olaylarının ısı haritası arasındaki farkı alın. Olay ısı haritası genel olay yoğunluğunu belirlemek açısından yararlı olsa da, bir risk tahmini olarak kördür, ancak çoğu zaman bu şekilde yorumlanır veya kötüye kullanılır. Aynı büyüklük ve şekildeki bir bölgede aynı sayıda olayı düşünün, ancak farklı bir nüfusa sahip, ancak bir bölgede suça yoğunlaşabilir, bunun nedeni o alanda daha fazla insan olması olabilir. Ek olarak, suç verilerinde olduğu gibi olay verisi oranlarını modellemek zor olabilir, çünkü bir ısı haritası taraması üretmek için, nüfus modeli gibi bir olaya ihtiyaç duyabilirler, ancak insanlar hareketsiz dururlar.

İkinci bir konu, bir ısı haritasının tek bir uzay ölçeğini göz önünde bulundurmak ve bu uzay ölçeğini seçmek, yani çekirdek büyüklüğü veya çürüme oranıyla sınırlandırılması, karmaşık olabilir ve çalışmanın hedeflerine bağlı, ancak gerekçeli olması gerektiğidir. . Önemli olan nokta, en güçlü kümenin merkezini ve bunun gerçekleştiği ölçeği tanımlamaksa (belki de bir hastalık salgınının kaynağını ve bunun yayıldığı bir faktörü tanımlamak için), daha iyi bir seçenek, çoklu ölçekleri göz önüne almak olabilir. 3B alan ölçeğinde yerel maksimumların küme merkezinin konumunu ve ilgili boyutlarını ve ölçekler arasındaki kalıcılığı belirttiği 3 boyutlu bir raster üretmek için ölçeğe / alana orantılı uygun ağırlıklarda.


1
Bazı çok geçerli noktalar. Bu iki problem aslında coğrafyanın klasik problemleridir. İlk sorun, altta yatan alanın düzensizliğinin yorumlanmasıyla ilgilidir, yani insanların dağılımı tek tip olmadığı için (bazı alanlarda seyrek nüfuslu olduğu için), suç için fırsat aynı değildir. Birindeki desen, diğerindeki desen tarafından zorlanır. İkinci ölçek konusu, ölçülecek alana, örneğin yoğunluğa bağlı olan herhangi bir ölçümü etkileyecek olan Değiştirilebilir Alan Birim Sorununun (MAUP) bir parçasıdır. Bu, çoğu coğrafi çalışmada klasik bir sorundur.
WhiteboxDev

Ayrıca, Thiessen çokgenlerini mekansal kalıplara ilk bakışta baktığınızı düşünün. Oldukça basittirler, ama aynı zamanda çok fazla ayrıntı gösterme yeteneğine sahiptirler, kesin bir enterpolatördürler ve diğer daha sofistike enterpolasyon yöntemlerine veba eden ölçek sorunlarının bir kısmını çözebilirler
Tom,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.