gpt4 book ai didi

r - 如何获取 R 包的 rmarkdown 小插图以逃避 Solaris 和 OSX 上的 CRAN 警告

转载 作者:行者123 更新时间:2023-12-04 04:28:00 25 4
gpt4 key购买 nike

我在 CRAN 上有几个 R 包,它们对 Solaris(有时是 OSX)发出警告,这些警告与 pandoc 不可用于小插图构建有关。例如,这里是 ggseas results on CRAN ,以及 source code for the vignette - 与提交给 CRAN 的版本略有不同,但没有任何相关的方式。

粗略的谷歌搜索表明这个问题很常见。在 GitHub 上也很容易找到单个包的十几个问题,但我找不到任何表明解决方案的内容。据推测,CRAN 维护者只是让这个过去了,但如果是这样的话,那就不妙了。我不喜欢勾选“我已经解决了上次提交的任何注释和警告”的框,因为它不是真的。

现在,一些幸运或熟练的人拥有不会导致此问题的 rmarkdown 小插图。例如,tidyr vignette是否not have any warnings for Solaris and OSX on CRAN .但我在 tidyr 小插图的序言中看不出有什么不同:

---
title: "Tidy data"
output: rmarkdown::html_vignette
vignette: >
%\VignetteIndexEntry{Tidy data}
%\VignetteEngine{knitr::rmarkdown}
%\VignetteEncoding{UTF-8}
---

或在包含此行的说明文件中,
VignetteBuilder: knitr

这与我的小插图不同,它会引发警告。这是我所拥有的:
---
title: "ggseas - seasonal decomposition on the fly"
author: "Peter Ellis"
date: "`r Sys.Date()`"
output: rmarkdown::html_vignette
vignette: >
%\VignetteIndexEntry{ggseas - seasonal decomposition on the fly}
%\VignetteEngine{knitr::rmarkdown}
%\VignetteEncoding{UTF-8}
---

我也有 knitrrmarkdown在描述文件的“建议”中,这是在各种问题讨论中提到的一种解决方案(通常后跟“但它没有解决”)。

我错过了什么?避免在 CRAN 上创建这些警告的秘诀是什么?不幸的是,对此进行实验并不容易,所以如果我们能在这里为所有受此困扰的人找到明确的答案,那就太好了。

编辑/添加 - 完整的描述文件

Hadley Wickham 建议问题最有可能出在 DESCRIPTION包的文件,而不是小插图本身。

这是 ggseas的描述文件,生成警告的包:
Package: ggseas
Title: 'stats' for Seasonal Adjustment on the Fly with 'ggplot2'
Version: 0.5.4
Authors@R: c(
person("Peter", "Ellis", , "peter.ellis2013nz@gmail.com", c("aut", "cre")),
person("Christophe", "Sax", role = "ctb")
)
Maintainer: Peter Ellis <peter.ellis2013nz@gmail.com>
Description: Provides 'ggplot2' 'stats' that estimate seasonally adjusted series
and rolling summaries such as rolling average on the fly for time series.
Depends:
R (>= 3.1.2),
ggplot2 (>= 2.0.0)
Imports:
seasonal,
rlang,
stats,
zoo
License: GPL-3
LazyData: true
RoxygenNote: 6.0.1
BugReports: https://github.com/ellisp/ggseas/issues
Suggests: testthat,
knitr,
rmarkdown
VignetteBuilder: knitr

下面是 tidyr 的描述文件,该包不会产生警告:
Package: tidyr
Title: Easily Tidy Data with 'spread()' and 'gather()' Functions
Version: 0.8.1.9000
Authors@R: c(
person("Hadley", "Wickham", , "hadley@rstudio.com", c("aut", "cre")),
person("Lionel", "Henry", , "lionel@rstudio.com", "aut"),
person("RStudio", role = "cph")
)
Description: An evolution of 'reshape2'. It's designed specifically for data
tidying (not general reshaping or aggregating) and works well with
'dplyr' data pipelines.
License: MIT + file LICENSE
URL: http://tidyr.tidyverse.org,
https://github.com/tidyverse/tidyr
BugReports: https://github.com/tidyverse/tidyr/issues
Depends:
R (>= 3.1)
Imports:
dplyr (>= 0.7.0),
glue,
magrittr,
purrr,
Rcpp,
rlang,
stringi,
tibble,
tidyselect
Suggests:
covr,
gapminder,
knitr,
rmarkdown,
testthat
LinkingTo:
Rcpp
VignetteBuilder: knitr
LazyData: true
Roxygen: list(markdown = TRUE)
RoxygenNote: 6.0.1

第二次编辑/添加 - 可在 rhub 上重现

这是我在使用 rhub::check(...) 时看到的内容对于 Solaris 平台。这里有一些线索可以说明问题与图像有关,这与 one suggestion on Twitter 相符。 ( tidyr 小插图没有图像)。因为没有图像(它是一个图形包)在我的小插图中没有意义,这可能会让我难倒。
✔  checking package vignettes in ‘inst/doc’
─ checking running R code from vignettes ...
‘ggseas.Rmd’ using ‘UTF-8’ ... OK
NONE
W checking re-building of vignette outputs
Error in re-building vignettes:
...
Warning in engine$weave(file, quiet = quiet, encoding = enc) :
Pandoc (>= 1.12.3) and/or pandoc-citeproc not available. Falling back to R Markdown v1.
Warning in (function (filename = "Rplot%03d.png", width = 480, height = 480, :
unable to open connection to X11 display ''
Quitting from lines 47-49 (ggseas.Rmd)
Error: processing vignette 'ggseas.Rmd' failed with diagnostics:
unable to start device PNG
Execution halted

最佳答案

已经有一段时间了,看来您还没有解决问题。
我的一个 imputeTS 包( vignette )上也有一个 R Markdown 小插图。它有很多用 ggplot2 创建的图像,所以我认为问题不在于一般的图像。
我对 .Rmd 文件有完全相同的注释
MARKDOWN .Rmd 文件:

---
title: "Gallery: Times Series Missing Data Visualizations"
author: "Steffen Moritz"
date: "`r Sys.Date()`"
output: rmarkdown::html_vignette
vignette: >
%\VignetteIndexEntry{Gallery: Times Series Missing Data Visualizations}
%\VignetteEngine{knitr::rmarkdown}
%\VignetteEncoding{UTF-8}
---
但是,我的描述与您的描述略有不同:
描述
Suggests:
testthat, R.rsp, knitr, zoo, timeSeries, tis, xts, tibble, tsibble, rmarkdown
License: GPL-3
VignetteBuilder: R.rsp, knitr, rmarkdown
正如你所看到的,rmarkdown 也被额外添加为 VignetteBuilder。你能不能试试这个。一些 Github 问题也表明这可能与问题有关 ( https://github.com/r-lib/usethis/issues/1147)

关于r - 如何获取 R 包的 rmarkdown 小插图以逃避 Solaris 和 OSX 上的 CRAN 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50789125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com