Предупреждения при восстановлении графических параметров - PullRequest
0 голосов
/ 10 декабря 2018

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

opar <- par()
par(oma = c(5, 4, 0, 0) + 0.1, mar = c(0, 0, 1, 1) + 0.1)
par(opar)

Предупреждающие сообщения:1: В пар (опар): графический параметр "cin" не может быть установлен2: В пар (опар): графический параметр "cra" не может быть установлен3: В par (opar): графический параметр "csi" не может быть установлен4: В par (opar): графический параметр "cxy" не может быть установлен5: В пар (опар): графический параметр "din" не может быть установлен6: В пар (опар): графический параметр «страница» не может быть установлен

Есть ли лучший способ сделать это?Я знаю функцию suppressWarnings(), но 1. Я не хочу, чтобы сообщения получали hidden и 2. Если функция вызывается два раза, появляется предупреждение:

> There were 12 warnings (use warnings() to see them)

Ответы [ 2 ]

0 голосов
/ 16 декабря 2018

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

Буквально:

opar <- par(oma = c(5, 4, 0, 0) + 0.1, mar = c(0, 0, 1, 1) + 0.1)
# other code that uses those settings
# when you are ready to reset to the original settings for oma and mar,
par(opar)

Это представлено в похожем примере в документе., ?par.

0 голосов
/ 10 декабря 2018

Вы можете обойти эти предупреждения, указав no.readonly = TRUE при сохранении графических параметров, следующим образом:

opar <- par(no.readonly = TRUE)
par(oma = c(5, 4, 0, 0) + 0.1, mar = c(0, 0, 1, 1) + 0.1)
par(opar)

Также вы можете восстановить значения параметров по умолчанию par, используя dev.off().

Надеюсь, это поможет.

...