Рисование тепловой карты в R на основе только почтовых индексов - PullRequest
8 голосов
/ 03 февраля 2011

Я хочу нарисовать тепловую карту в R, но мой файл данных выглядит так:

Lat, Long, Zip, Zvalue

Мне в основном нужно интерполировать между значениями lat и long и рисовать цвета на основе zvalue

Какмогу ли я сделать это в R

Я в конечном итоге хочу получить что-то вроде этого

enter image description here

Ответы [ 3 ]

4 голосов
/ 03 февраля 2011

Пакет spatstat ваш друг!

http://www.spatstat.org/spatstat/

Если ваши данные представляют собой набор событий (например, «преступление произошло в (x, y)» для многих (x, y)), то вы можете использоватьоценка плотности ядра для создания вашей тепловой карты.Вы можете увидеть пример здесь:

https://github.com/drewconway/WikiLeaks_Analysis/blob/master/density.r

конкретно строка 72.

Если ваши значения z являются действительными значениями (что, вероятно, имеет место при чтении вашего вопроса), тогдаВы можете использовать функцию smooth spatstat, которая использует ядро ​​Гаусса для выполнения интерполяции и получения набора пикселей, которые были сгенерированы путем интерполяции ваших данных.

В качестве альтернативы, вы можете использовать пакет akima (как рекомендовано авторами spatstat) для интерполяции в указанных вами местах.Он использует линейную или сплайн-интерполяцию и кажется довольно простым (хотя у меня нет с этим опыта!).

В целом то, что вы пытаетесь сделать, часто называется «Кригингом», и поэтому вы получите множество результатов, если вы включите Google для этого.Посмотрите, например, пакеты gstat и geoR.

Наконец (и FTW) вы можете использовать процессы Гаусса, чтобы сделать то же самое.Это фактически даст вам распределение возможных интерполяций с учетом ваших данных.Пакет R kernlab имеет реализацию, хотя я не знаю, как его использовать.

3 голосов
/ 03 февраля 2011

Джеффри Брин сделал этот тип графика, используя пакеты ggplot2 и zipcode: http://jeffreybreen.wordpress.com/2011/01/05/cran-zipcode/

Это должно помочь вам начать

2 голосов
/ 03 февраля 2011

Вы можете посмотреть код победителя конкурса тематических исследований ggplot здесь

Автор использовал geom_tile для создания тепловой карты, название графика: Насильственные преступленияКарта погоды в центре Хьюстона

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...