Створення ефективних теплових карт?


65

Використання ArcGIS, QGIS, трави та / або GVSIG:

  • Які деякі інструменти та процеси, що беруть участь у створенні ефективних теплових карт?
  • Які плагіни задіяні?
  • Які основні вимоги до даних?
  • Які є недоліки існуючих теплових карт?
  • Назвіть деякі проблеми, які теплові карти не можуть ефективно покрити?
  • Як не зробити теплову карту?
  • Чи є кращі альтернативи (у тому ж контексті), як теплова карта для подання даних?

Хоча він не використовує жоден із вказаних вами інструментів, можливо, ви також хочете ознайомитись із цим сценарієм Python. Jjguy.com/heatmap
radek

1
Дассукі, чи могли б ви уточнити, що ви маєте на увазі під термічною картою? Вікіпедія, здається, вважає це хороплетним переданням масиву цінностей. Це тонко, але важливо, відрізняється від усіх відповідей у ​​цій темі, які припускають, що це просто означає карту будь-якого атрибута на основі сітки (або зображення), особливо того, який був інтерпольований у сітку з точкових даних. Відповіді на кожне з ваших запитаних питань будуть різними для справжньої теплової карти.
whuber

Відповіді:


74

Це запитання було перетворено на Wiki Wiki спільноти та вікі заблоковано, оскільки це приклад запитання, що шукає список відповідей і, здається, є досить популярним, щоб захистити його від закриття. Це слід розглядати як окремий випадок і не слід розглядати як тип запитання, який рекомендується в цьому або будь-якому веб-сайті Stack Exchange, але якщо ви хочете внести до нього більше контенту, тоді не соромтеся, редагуючи цю відповідь. .


Існує щонайменше два різні види теплових карт:

  1. Теплові карти, що представляють концентрацію балів, і
  2. Теплові карти, що представляють розподіли значень атрибутів

Кожен метод має свої переваги та проблеми, я боюся, що деталізація набагато виходить за межі цього питання.

Я спробую перерахувати деякі методи та функції для QGIS та GRASS.

Концентрація балів

Якщо ви відстежуєте рух дикої природи, транспортних засобів тощо, може бути корисно оцінити регіони з високою концентрацією повідомлень про місцезнаходження.

Інструменти: наприклад, плагін QGIS Heatmap (доступний у версіях> 1.7.x) або GRASS v.neighbors або v.kernel

Розподіл значень атрибутів

Тут ми говоримо в основному про методи інтерполяції. Методи включають:

  1. IDW

    Залежно від реалізації це може бути глобальним (з використанням усіх доступних точок у наборі) або локальним (обмеженим кількістю очок або максимальною відстані між точками та інтерпольованою позицією).

    Інструменти: інтерполяційний плагін QGIS (глобальний), GRASS v.surf.idw або r.surf.idw (локальний)

  2. Шпонки

    Знову величезна кількість можливих реалізацій. B-Splines популярні.

    Інструменти: GRASS v.surf.bspline

  3. Кригінг

    Статистичний метод з різними підтипами.

    Інструменти: GRASS v.krige (завдяки om_henners за підказку) або за допомогою R.


1
Існує інтерфейс через GRASS для kriging, v.krige ( grass.osgeo.org/wiki/V.krige_GSoC_2009 ), але він все ще потребує R, а також різні R-пакети та прив’язки, згадані на сторінці GRASS Wiki.
om_henners

Оскільки QGIS 2.8 є рендером теплової карти для точкових шарів. Не потрібно створювати нові дані.
Олександр Нето

34

Статистично, ось, як вам слід займатися тим, як робити теплову карту:

1) Інтегруйте функції точок. Ідея інтеграції полягає в тому, щоб взяти точки, які слід вважати збігом, і об'єднати їх разом як єдине місце. Мені подобається використовувати аналіз найближчого сусіда і звідти використовувати відповідне значення. (Наприклад, роблячи теплову карту злочину, я використовую середнього першого найближчого сусіда для базового набору даних про посилку, проти якого геокодуються злочини).

2) Збір подій . Це створює просторову вагу для всіх ваших інтегрованих точок. Наприклад, якщо у вас є 5 подій в одному місці, це стане однією точкою з вагою 5. Це важливо для наступних двох кроків. Якщо вам потрібно об'єднати атрибут в об'єднаних подіях, тобто різні події мають більшу вагу, тоді ви можете використовувати просторовий приєднання один до одного . Використовуйте вихідний результат "збирати подію" як ціль, а свої оригінальні інтегровані події як функції приєднання. Встановіть правила злиття карти поля, статистично поєднуючи атрибут інтегрованих подій (як правило, з SUM, хоча ви можете використовувати інші статистичні дані).

3) Визначте пікову просторову автокореляцію за допомогою I глобального Морана . Як це говориться, запускайте I глобального морана через різні проміжки часу, щоб визначити пікову смугу просторової автокореляції в масштабі, відповідному аналізу, який ви робите. Можливо, ви захочете знову запустити найближчого сусіда на зібрані події, щоб визначити діапазон старту для I-тестів морану. (наприклад, використовувати максимальне значення для першого найближчого сусіда)

4) Запустіть Гетіс-Орд Гі * . Використовуйте смугу фіксованої відстані на основі аналізу I морану або використовуйте смугу фіксованої відстані як зону байдужості. Ваша просторова вага від подій збору - це ваше числове поле. Це дасть вам z-бали за кожну точку події у вашому наборі.

5) Запустіть IDW проти результатів Getis-Ord Gi *.

Цей результат суттєво відрізняється від того, що ви отримуєте з щільністю ядра. Він покаже вам, де високі та низькі значення згруповані разом, а не лише там, де величини високі, без огляду на кластеризацію, як у щільності ядра.


20

Хоча мені подобаються теплові карти, я розумію, що їх часто неправильно використовують.

Зазвичай те, що я бачив, - це процес, згідно з яким колір кожного пікселя базується на результаті зворотної відстані, зваженої функції, застосованої до набору точок. Кожен раз, коли на карті є багато маркерів, що перетинаються, я думаю, що варто розглянути теплову карту.

Ось веб-api .

GeoChalkboard має хороший підручник для цього .

Ви можете використовувати IDW в ArcGIS.


7
Зауважте, що IDW дуже чутливий до місць збору даних. Наприклад, якщо дані кластеризовані, ви, можливо, отримаєте погані математичні аномалії.
Рід Копсей

@Reed Copsey Яку альтернативу ви б запропонували?
fmark

2
@fmark: Є безліч інтерполяційних процедур, які ви можете використовувати замість IDW, включаючи підходи, засновані на природних сусідах / тріангуляції, Kriging, сплайнінг / мінімальна напруга тощо.
Reed Copsey

@Reed Я ніколи не переймався математичною правильністю теплових карт (можливо, я повинен бути таким). Але я думаю, що вони корисно спілкуються з кластерами у багатьох ситуаціях. Ось приклад карти, я думаю, що це може бути корисно представлено як теплова карта: www2.clustrmaps.com/counter/maps.php?url=http://clustrmaps.com
Кірк Куйкендалл,

2
Я думаю, що вони чудовий інструмент. Математична / статистична правильність, ймовірно, важлива лише в тому випадку, якщо ви використовуєте результати для прийняття рішень, але якщо це передати загальний сенс розподілу, IDW, ймовірно, добре. (Це більше питання кластерів, що спричиняють великі «перекоси» в результатах теплової карти, особливо між кластерами, через математичні аномалії.)
Рід Копсей

12

Для простих теплових карт та генерування лічильників лічильника я використав QGis із перетворенням трави:

  1. Завантажте точки даних
  2. Навантажуйте обмежувальну форму - наприклад, межу округу
  3. Створіть набір трав трави
  4. Відкрийте панель інструментів «Трава» та натисніть на список модулів для пошуку кожного інструменту
  5. Завантажте v.in.ogr.qgis модуль і завантажте як дані точки, так і граничну форму, кожен раз запам'ятовуючи, щоб натиснути вихідний вигляд для кожного - дайте кожному корисне ім’я, як точкові дані та маски
  6. Перетворіть маску в растр, щоб використовувати її як маску з v.to.rast і додати до набору карт - назвіть це щось на кшталт макрастер - це може зайняти час для складних багатокутників.
  7. Завантажте модуль r.mask, щоб змусити наступну дію обмежуватися буферною областю.
  8. Запустіть v.surf.rst, щоб створити інтерпольовану сітку з точкових даних - виберіть відповідний стовпець як поле атрибутів для здійснення інтерполяції та назвіть це щось на зразок растрової поверхні . Це біт, який вимагає часу і генерує растр, який може бути використаний як для теплової карти або може бути затіненим 3D.
  9. Закрийте панель інструментів «Трава»
  10. Використовуйте плагін GDAL Raster Contours, вибравши растр GRASS як вхідний; залиште значення рівня за замовчуванням у 10 та виберіть вихідний каталог, де буде збережено файл форми контурів. Перевірте "Ім'я атрибута" та введіть ім'я.

NB: Щоб це працювало, набори даних повинні бути в одній проекції!


4

Я думаю, що на це питання було багато відповідей, за винятком декількох пунктів щодо цих питань.

Теплові карти можуть бути чудовими, але класичний недолік і проблема полягає в інтерпретації. Візьміть різницю між тепловою картою подій злочину порівняно з картою (тепла чи іншим чином) рівня злочинності / пропорції. Хоча теплова карта події може бути корисною з точки зору визначення загальної густини подій, вона є сліпою як оцінка ризику, але часто трактується або не використовується таким чином. Розглянемо однакову кількість подій в регіоні однакової величини та форми, але з різною сукупністю, хоча злочин може бути зосереджений у районі, що просто може бути, оскільки в цьому просторі більше людей. Крім того, ставки за даними про події, як, наприклад, про злочини, можуть бути важкими для моделювання, тому що для створення растрової теплової карти вони можуть вимагати такої події, як модель населення, але люди, як правило, не стоять на місці.

Друге питання полягає в тому, що теплова карта обмежується розглядом єдиного просторового масштабу, і вибір цього просторового масштабу, тобто розміру ядра або швидкості розпаду, може бути складним і залежить від цілей дослідження, але повинен бути виправданим . Якщо справа в тому, щоб визначити центр найсильнішого скупчення та масштаб, в якому він виникає (можливо, щоб визначити джерело спалаху захворювання та чинник його поширення), кращим варіантом може бути розгляд кількох шкал. З відповідними ваговими коефіцієнтами, пропорційними масштабу / площі, щоб отримати тривимірний растр, де локальні максимуми в 3D-растровому просторі показують розташування центру кластерів та їх відповідні розміри та стійкість між масштабами.


1
Ви зазначаєте дуже вагомі моменти. Ці дві проблеми - це насправді класичні проблеми географії. Перше питання пов'язане з інтерпретацією основної нерівномірності простору, тобто оскільки розподіл людей неоднаковий (де деякі райони малонаселені), можливість злочину також неоднакова. Візерунок в одному вимушений візерунком в іншому. Другий випуск шкали є частиною проблеми «Модифікована територіальна одиниця» (MAUP), яка впливатиме на будь-який захід, залежний від області вимірювання, наприклад, щільність. Це класична проблема більшості географічних робіт.
WhiteboxDev

Розгляньте також полігони Тіссена як перший вирізаний на просторові візерунки. Вони досить прості, але також здатні показати багато деталей, є точним інтерполятором і, здається, обходять
Том Ділтс
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.