Ошибка в rmarkdown при прорисовке

Я новичок в этом форуме и новичок в R в целом. Но недавно я познакомился с rmarkdowns в Rstudio и получил готовый скрипт, который использует некоторые CSV-файлы для выполнения некоторых вычислений, а затем создает некоторые графики.

Сценарий следующий (данные прилагаются):SE_MACover_Abr2014_40m_CP.csv

```{r prepare the data} 

df <- read.csv(file.choose()) #SE_MACover_Abr2014_40m_CP.csv 

#   call the libraries 

library(ggplot2) 
library(plyr) 
library(reshape2) 

str(df) 
df 

## create factor levels 
df$Stat <-factor(df$Stat, levels = c("SE_Mean", "SE_Min","SE_Max")) 

df$Imgs <- factor(df$Imgs, levels = c("2", "5","10", "20","30", "40", "50",     "60", "70")) 
df$Stat 
df$Imgs 

```{r plot means, mins, and maxs} 
Plot1 <- ggplot(data = df, aes(x = Imgs, y = X, group = Stat)) + 
geom_line(aes(linetype = Stat, colour = Stat), size = 1) + 
geom_point(aes(colour=Stat)) + 
ylab(bquote('Standard Error ')) + 
xlab(bquote('Number of Images')) 
Plot1 

Я попытался это в базе R и работал нормально, но rmarkdown в Rstudio графики не строят, и это дает мне следующее сообщение об ошибке:

Ошибка в (функция (имя файла = "Rplot%03d.png", ширина = 480, высота = 480,: неверное имя файла)

глядя на трассировку, он показывает следующее:

  1. stop ("неверное имя файла")
  2. (функция (имя файла = "Rplot%03d.png", ширина = 480, высота = 480, единицы = "px", точечный размер = 12, bg = "белый", res = NA, семейство = "sans", restoreConsole = TRUE, type = c("windows", "cairo", "cairo-png"), antialias = c("default", "none", "cleartype", "grey", "subpixel"))...
  3. do.call (что = png, args = args)
  4. .rs.createNotebookGraphicsDevice (имя файла, высота, ширина, единицы, pixelRatio, extraArgs)
  5. (function () {.rs.createNotebookGraphicsDevice (имя файла, высота, ширина, единицы, pixelRatio, extraArgs)...
  6. grid.newpage ()
  7. print.ggplot (х)
  8. function (x,...) UseMethod ("print") (x)

Я даже попытался построить самый простой график с помощью этого кода:

 x <- c(1,2,3,4,5,6) 
 y <- c(1,2,3,4,5,6) 
 plot(x,y) 

Пока я пытался решить эту проблему, так как думал, что с моим сценарием возникла проблема, кто-то предложил вставить часть сценария для рисования прямо в консоль. Я так и сделал, и это сработало! И он выдает ту же ошибку в rmarkdown, но в консоли работает нормально.

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

пожалуйста, помогите мне

1 ответ

Эта проблема часто возникает, когда временные пути и имена файлов, созданные RStudio при создании документа rmarkdown, слишком длинные. В системах Windows это обычно 260 символов, но точная длина зависит от того, отформатирован ли ваш диск с использованием FAT, NTFS и т. Д. Обратите внимание, что проблема заключается во временных файлах, созданных RStudio- обычно вы не можете их контролировать.

Однако вы можете контролировать длину пути вашего документа rmarkdown. Если оно достаточно короткое, RStudio оставляет "место" для создания временного имени файла.

В качестве альтернативы перезапуск RStudio часто срабатывает, хотя при работе с документом rmarkdown, если вы снова столкнетесь с проблемой, вам придется перезапустить снова.

У меня была та же проблема, и я только что понял, что это связано с именем файла моего Rmd-файла - я использовал% в имени. Проблема исчезла после удаления символа. Какое имя у вашего Rmd-файла? Может быть, вы должны попытаться переименовать ваш файл.

Другие вопросы по тегам