2016-01-26 2 views
2

Я пытаюсь построить несколько точек на карте Германии, используя пакет ggmap, который отлично работает. Однако я хотел бы внести некоторые конкретные изменения и не знаю, как это сделать или если это вообще возможно.Отрегулируйте размер шрифта на картах в ggmap

Для того, чтобы карты, я делаю следующее (d представляет собой кадр данных с долгот и широт):

map <- get_map(location = c(10.25828, 51.11484), zoom = 6, maptype = "terrain") 
p <- ggmap(map) 
p <- p + scale_x_continuous(limits = c(6.09500,14.95306)) + scale_y_continuous(limits = c(47.39889,55.01250)+c(0,-0.1)) 
p <- p + xlab("Longitude") + ylab("Latitude") 

На этой карте, то я сюжет некоторые моменты. Теперь, если я установил zoom = 6, как указано выше, карта очень детализирована, и печатается множество имен городов, а также некоторые белые линии для дорог. Это делает карту слишком «переполненной». Вот как выглядит карта: zoom = 6

Размер pdf также довольно большой, что не очень практично, если я хочу иметь несколько карт.

С другой стороны, если я установил zoom = 5, тогда фон будет менее детализированным, будут показаны меньше дорог и т. Д., А файл будет меньше. Однако печатный шрифт городов и названий стран слишком велик. Вот как это выглядит:

zoom 6

Так что мой вопрос: Может ли это каким-то образом получить карту с подробной информацией, как в увеличении = 5, но с размером шрифта названий стран и городов, как и в зум = 6 ?

Заранее спасибо

ответ

4

Если вы изменили значение с get_map на get_googlemap, вы можете передать строку в аргумент style, который будет передан API-интерфейсу Google Static Maps. См. the documentation и важнейший reference.

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

map <- get_googlemap(center = c(10.25828, 51.11484), zoom = 6, maptype = "terrain", 
        style = 'feature:road|element:all|visibility:simplified&style=feature:administrative.locality|element:labels|visibility:off') 

который возвращает

simplified map of Germany

Если вы хотите больше меток , вероятно, проще вставить их позже в R. Настройте, как вам нравится.

+0

работает отлично, спасибо! Я решил пойти с 'map <- get_googlemap ( center = c (10.25828, 51.11484), zoom = 6, maptype =" terrain ", style = 'feature: road | element: all | visibility: off & style = feature: Administrative .locality | element: labels | visibility: simplified ' ) ' – user3825755

+0

Еще один быстрый вопрос: я мог бы создать много таких карт. Есть ли у вас какое-либо предложение (например, выбор опции 'style = ...') о том, как сохранить размеры файлов в формате pdf? – user3825755

+0

Единственный реальный способ - понизить качество изображения. В 'get_googlemap' есть значение по умолчанию, которое устанавливает 'scale = 2', что увеличивает разрешение. Если вы установите его на 1, вы получите карту размером в квартал с половиной разрешения. Однако, это практический вариант, действительно, зависит от того, что вы используете для карт. – alistaire

0

Насколько я знаю, большинство картографических услуг включают метки в оказанных тайлах. У меня никогда не было этой проблемы в r, но с другими картографическими сервисами. Рендеринг с меньшими надписями с использованием настраиваемой службы карт должен быть возможен, но ggmap предлагает только карты CloudMade, которые могут быть слишком дорогими.

Я бы рекомендовал использовать другую библиотеку, если это возможно, может быть, один описанный в r-bloggers.com они используют обычай сделал карту из MapBox бесплатный сервис (до определенного предела) я бы рекомендовал.

Смежные вопросы