Еще один вопрос о "конечных значениях xlim" - PullRequest
0 голосов
/ 25 января 2019

Я знаю, что есть миллион ответов на вопросы о plot.window с ошибкой «нужны конечные значения xlim», но мне еще не удалось найти такой, который бы работал для меня или соответствовал моей конкретной ошибке, поэтому я спрашиваю Помогите. Извините, если вопрос окажется дубликатом!

Итак, у меня есть набор данных «data» с несколькими непрерывными переменными (в этом случае мы работаем только с «CESD_score»). Ни одно из наблюдений не является NA. Вот пример набора:

CESD_score
12
15
10
4
16
8

Я пытаюсь построить qqplot с помощью qqline, и я могу визуализировать его, когда использую графический интерфейс / консоль, но он не работает, когда я пытаюсь построить его для сохранения в формате png. Вот мой код:

attach(data)
qq1 <- qqnorm(data$CESD_score, main="CESD Score Q-Q Plot", xlab="Theoretical Quantiles", ylab="CESD Score", plot.it = TRUE, datax = FALSE, xlim = c(-2,2))
qq1 <- qqline(data$CESD_score, datax = FALSE, distribution = qnorm, probs = c(0.25,0.75), qtype = 7, col = "red4", xlim = c(-2,2))
png("C:/Users/Desktop/CESDqq.png")
plot(qq1)
dev.off()

Вот ошибка, которую я получаю:

Error in plot.window(...) : need finite 'xlim' values
In addition: Warning messages:
1: In min(x) : no non-missing arguments to min; returning Inf
2: In max(x) : no non-missing arguments to max; returning -Inf
3: In min(x) : no non-missing arguments to min; returning Inf
4: In max(x) : no non-missing arguments to max; returning -Inf

Прежде всего, я сбит с толку, почему я получаю ошибку «Need Finite« Xlim »values», так как я указал значения xlim, которые отражают мои данные. Во-вторых, я не уверен, почему я получаю другие ошибки.

Есть мысли? Чего мне не хватает?

Еще раз спасибо за ваши ответы, и я извиняюсь, если это окажется глупым вопросом!

1 Ответ

0 голосов
/ 25 января 2019

Вместо перезаписи qq1, просто поместите оба вызова на qqnorm() и qqline() внутри png() вызова:

png("c:/users/ccarpenter/desktop/test.png")
  qqnorm(data$CESD_score, main="CESD Score Q-Q Plot", xlab="Theoretical Quantiles", ylab="CESD Score", plot.it = TRUE, datax = FALSE, xlim = c(-2,2))
  qqline(data$CESD_score, datax = FALSE, distribution = qnorm, probs = c(0.25,0.75), qtype = 7, col = "red4", xlim = c(-2,2))
dev.off()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...