Как я могу изменить тему по умолчанию в ggplot2?

Предпосылки

Я хотел бы изменить тему, используемую ggplot, но мне трудно понять документацию и примеры theme_update () .

Я использую align_plots () , чтобы разместить прямоугольную диаграмму поверх графика плотности, но я обнаружил, что ни один из этих кодов не вызывает ошибку, и остался с минимальным примером. Я подозреваю, что ошибка вызвана использованием theme_blank () , но я не уверен, почему это происходит и как я могу это исправить.

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

library(ggExtra)
align.plots(qplot(1))

Но она перестает работать после обновления темы:

newtheme <- theme_update(axis.text.y = theme_blank(),
                         axis.line = theme_blank(),
                         axis.title.x = theme_blank(), 
                         axis.title.y = theme_blank(),
                         axis.ticks.x = theme_blank(),
                         panel.grid.major = theme_blank(),
                         panel.grid.minor = theme_blank(),
                         panel.border = theme_blank(),
                         axis.color.y = 'white')
align.plots(qplot(1))

Это дает ошибку:

Error in UseMethod("validGrob") : 
  no applicable method for 'validGrob' applied to an object of class "NULL"
In addition: Warning message:
In editThisGrob(grob, specs) : Slot 'vp' not found

Вопросы:

  1. Что вызывает эту ошибку?

  2. Где я могу получить дополнительную информацию об использовании ? Theme_update () ? Я дошел до документации ggplot и могу ' Я найду ответ на веб-сайте ggplot , хотя наиболее близким из того, что я получил, был сценарий polishing.r

примечание:

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

opt <- opts(...)
align.plots(qplot(1) + opt)

где ... это содержимое theme_update () выше

8
задан Community 23 May 2017 в 11:52
поделиться