Создание картограмм на принципах грамматики графики....

Post on 04-Jul-2015

648 views 0 download

description

Слайды выступления Александра Матрунича на конференции "Открытые ГИС" 17 ноября 2012 г. в Москве. Грамматика графики - подход к визуализации статистических данных, позволяющий перейти к содержательной части графика и не отвлекаться второстепенные детали, которые создаются автоматически. Ggplot2 - расширение Хэдли Викхэма для среды статистической обработки данных R, реализующее концепцию грамматики графики. Для создания графика в ggplot2 пользователь указывает исходный массив данных, сопоствляет переменным из массива подходящие средства графического представления (такими могут быть положение по вертикали и горизонтали, размер, цвет заливки, цвет обводки, форма и др.), выбирает тип геометрического объекта (например, точка, прямоугольник, линия, изолиния, ящик с усами и пр.), и при необходимости устанавливает способ статистического преобразования данных, тип координатной системы. Ggmap - расширение Дэвида Кахли для R, "заточенное" под создание картограмм и основанное на ggplot2. В качестве положения по вертикали и горизонтали в ggmap зафиксированы широта и долгота, в качестве проекции - Меркатор. Ggmap упрощает процесс визуализации пространственных данных, минимизируя усилия пользователя под установке географической подложки для своего графика. В качестве подложки могут быть выбраны слои из сервиса Google Maps, OpenStreetMap, CloudMade.

Transcript of Создание картограмм на принципах грамматики графики....

Создание картограмм на принципах грамматики графики

С помощью R-расширения ggmap

Александр Матрунич

24 района Псковской области

> ggplot(data, aes(x = area_km2, y = population_2010)) + geom_point()

> ggplot(data, aes(x = area_km2, y = population_2010)) + geom_point()

> ggplot(data, aes(x = area_km2, y = population_2010)) + stat_identity()

> ggplot(data, aes(x = area_km2, y = population_2010)) + stat_identity()

> ggplot(data, aes(area_km2, population_2010)) + geom_point()

> ggplot(data, aes(area_km2, population_2010)) + geom_point()

> qplot(area_km2, population_2010, data = data, geom = 'point')

> ggplot(data, aes(area_km2, population_2010)) + geom_smooth()

> ggplot(data, aes(area_km2, population_2010)) + geom_smooth()

> ggplot(data, aes(area_km2, population_2010)) + geom_smooth() + geom_point()

> ggplot(data, aes(area_km2, population_2010)) + geom_smooth()

> ggplot(data, aes(area_km2, population_2010)) + geom_smooth() + geom_point()

> ggplot(data, aes(area_km2, population_2010, size = crop_product)) + geom_point()

> ggplot(data, aes(area_km2, population_2010, size = crop_product)) + geom_point()

> ggplot(data, aes(area_km2, population_2010, size = crop_product, color = retail_mln_rub)) + geom_point()

100 прекрасных мертвецовtkachi.com/100_prekrasnih_mertvetsov.jsp

> head(builds) x y start_date end_date start_develop2 use11 30.29113 59.93009 NA 2006 NA laboratory 2 30.35050 59.91288 1840 2005 2008 residential3 30.28010 59.92663 1865 2004 NA residential4 30.38010 59.92752 1878 2005 2007 residential5 30.29055 59.90604 1902 2007 NA residential6 30.28252 59.93762 1835 2005 2008 residential

spbmap <- qmap('Санкт-Петербург', zoom = 12, source = 'osm', colour = 'bw')

spbmap + geom_point(data = builds, aes(x = x, y = y, colour = start_date, size = start_date))

spbmap + geom_point(data = builds, aes(x = x, y = y, colour = start_date, size = start_date))

spbmap + stat_bin2d(data = builds, aes(x = x, y = y), alpha = .5, bins = 15, colour='black')

spbmap + stat_bin2d(data = builds, aes(x = x, y = y), alpha = .5, bins = 15, colour='black')

spbmap + stat_density2d(data = builds, aes(x = x, y = y, fill = ..level.., alpha = ..level..), geom = 'polygon')

spbmap + stat_density2d(data = builds, aes(x = x, y = y, fill = ..level.., alpha = ..level..), geom = 'polygon') + facet_wrap( ~ use)

Что дальше?●ggmap: Google как основа

●Геокодирование●Маршруты

●ggsubplot

●www.r-project.org●www.ggplot2.org●sites.google.com/site/davidkahle/ggmap

Александр Матруничwww.matrunich.com