Ошибка: не удалось найти функцию "unit"

При попытке изменить настройки темы этот простой код дает следующую ошибку:

library(ggplot2)
theme_nogrid <- theme_set(theme_update(  
                  plot.margin=unit(c(.25, .25, .25, .25), "in"),))

Error in do.call(theme, list(...)) : could not find function "unit"

R дает мне эту ошибку для любого элемента, который использует "unit". Любые другие настройки, которые не называют "единицей", работают нормально. Я запускаю R v.2.15.2 (64-разрядная версия Windows).

Я подробно искал в Интернете эту проблему и ничего не нашел. Я ценю любые предложения по этой проблеме.

Ответ 1

Это тесно связано с хотя и не совсем идентичным стрелке() в ggplot2 больше не поддерживается, в котором говорится:

[the] grid [package] загружался автоматически предыдущими версиями ggplot[2] (создание grid функции видимы/доступны пользователю); теперь он сослался на вместо импорта NAMESPACE, поэтому вам нужно явно загрузить grid if вы хотите использовать функции grid (или [посмотреть] страницы помощи).

"явная загрузка" здесь означает library("grid") или require("grid") (grid - базовый пакет, поэтому его не нужно устанавливать отдельно).

unit() - это функция из пакета grid, поэтому применяется ответ выше (который был около arrow()).

В качестве альтернативы вы можете указать grid::unit(...) или grid::arrow(...) без явной загрузки всего пакета.