J'ai développé une application brillante qui permet à l'utilisateur de télécharger un rapport HTML via R Markdown. J'essaie d'inclure des images et des CSS personnalisés dans mon fichier rmarkdown. Cependant, je reçois toujours ce message d'erreur:
pandoc: Could not fetch (either css or image file)
openBinaryFile: does not exist (No such file or directory)
Lorsque je tricote le fichier .rmd sur R Studio, il est capable de référencer le fichier image ou css que je veux. Cependant, lorsque j'exécute l'application Shiny et télécharge le fichier html, j'obtiens le message d'erreur ci-dessus. J'ai même essayé de mettre les images et les fichiers css dans le même répertoire de travail que le fichier .rmd, mais en vain ...
output:
html_document:
css: pandoc.css
(same error message as above)
Vous avez essayé de trouver une solution à cela, mais cela ne semble pas ... quelqu'un peut-il aider ici?
J'avais un problème similaire. Je n'utilisais pas le chemin d'accès complet au fichier. J'utilisais ~/path/to/file. Je l'ai changé pour le chemin complet (c'est-à-dire supprimé le ~ /) et cela a fonctionné.
Je viens d'avoir ce problème également, mais pour moi, la raison était que le projet RStudio était sur un lecteur partagé, et je l'avais ouvert via l'emplacement réseau. Le problème a été résolu lorsque j'ai fermé le projet et l'ai rouvert via un lecteur réseau mappé. (Si lorsque vous exécutez getwd()
votre emplacement commence par \\
, c'est probablement ce qui vous arrive.)
Le problème que j'ai eu avec RStudio et l'erreur pandoc (erreur openBinaryFile) était dû au chemin d'accès au fichier dans lequel le projet a été créé et chargé.
Lorsque j'ai créé le projet, je l'ai créé en utilisant le chemin universel, qui est la 2e option dans l'image ci-dessus. Cependant, lorsque j'ai changé cela en lettre de lecteur mappé, l'option au-dessus, mon erreur pandoc avait disparu.
J'utilise RStudio 1.2.1335 et R version 3.4.4
J'ai eu un problème similaire, avec RStudio, rmarkdown et pandoc sur une machine Windows avec réseau de fichiers réseau. J'ai suivi divers conseils, mappé le lecteur à une lettre et cela n'a toujours pas aidé.
Finalement, j'ai découvert que l'un des chemins dans mes libPaths contenait l'emplacement réseau/chemin universel. J'ai mis à jour ce chemin d'accès au lecteur de lettres mappé et tout semble bien se passer!
Je crois que j'avais le même problème. J'avais d'abord essayé Modification du répertoire par défaut mais chaque fois que j'allais tricoter le fichier RMarkdown, j'obtenais le même ensemble d'erreurs indiquant que le processus essayait toujours d'accéder aux fichiers sur le lecteur H de mon réseau plutôt que mon lecteur C local, en particulier, il cherchait dans le fichier de bibliothèque rmarkdown sur le lecteur réseau. Je pensais que je suivais les conseils ci-dessus, mais après cela n'a pas fonctionné, j'ai essayé de supprimer le dossier rmarkdown dans le lecteur réseau
par exemple: \\fwnew12\Home\My Documents\R\win-library\3.6\rmarkdown
.
Cela a semblé forcer R à n'utiliser que mon lecteur C local (C:/Program Files/R/R-3.6.3/library
) et enfin tricoter un PDF avec succès. Ce n'est peut-être pas une approche recommandée, mais j'ai juste besoin de quelque chose qui fonctionne.
J'ai récemment rencontré le problème sur mon ordinateur de travail Windows où j'ai simplement défini la .libPaths()
dans la Rprofile.site
fichier. Ceci en ligne avec les réponses précédentes mais un peu plus détaillé.
Vérifiez vos chemins actuels:
> .libPaths()
[1] "\\\\my_work_server.se/some_subdir$/username/Dokument/R/win-library/3.6"
[2] "C:/R/R-3.6.3/library"
Cherchez le \\\
, dans ce cas c'est le chemin "\\\\my_work_server.se/some_subdir$/username/Dokument/R/win-library/3.6"
. Ce chemin est probablement un répertoire personnel déjà monté, dans mon cas, c'est H:
= "\\\\my_work_server.se/some_subdir$/username/
. Si vous n'avez pas de répertoire monté, vous voudrez peut-être le corriger en premier ou changer le chemin de la bibliothèque en un autre.
Donc, si vous avez installé R sous C:/R/R-3.6.3/
vous modifiez le fichier C:/R/R-3.6.3/etc/Rprofile.site
et ajouter:
.First <- function(){
.libPaths(c("H:/Dokument/R/win-library/3.6", "C:/R/R-3.6.3/library"))
}
N'oubliez pas de changer H:
à l'endroit où vous avez votre répertoire réseau monté.
Voilà, redémarrez R et vous devriez pouvoir tricoter votre document.