我正在尝试使用奇妙的“bookdown2”包(作为令人难以置信的 rrtools 包的一部分)在 R 中编写可复制的手稿,这些手稿以 .docx 格式发送给出版商进行同行评审。
同行评审过程结束后,通常需要进行更正。
大多数期刊在引入审稿后更正后都需要稿件的标记版本。
有没有办法从 R 中生成带有“更改跟踪”的 Word 文件?
我知道可以生成两个文件并使用 Word 来比较两个版本。这可行,但与可重复的工作流程不一致,容易出错,并且需要点击以及 Microsoft Word 软件。
一定有更好的方法。
感谢bookdownYihui Xie提供的非常有用的软件包,数字的交叉引用非常有效。并且可以参考这个问题中描述的数字
但是,在用 R 为科学论文撰写出版物时,我必须将几组数字分开。第一组是进入出版物的数字,第二组是补充数字。
我想有一个单独的计数器用于补充数字。目前有没有办法在bookdown包装中做到这一点?
所以基本上我喜欢
\@ref(fig:figure1) # evaluates to Fig. 1
\@ref(fig:figure2) # evaluates to Fig. 2
\@ref(figS:supplementary-figure1) #evaluates to Fig. S1.
Run Code Online (Sandbox Code Playgroud)
附注。对我来说最重要的输出是bookdown::word_document2
最小工作示例:
---
title: "MWD"
output: bookdown::word_document2
---
# Results
This text refers to Fig. \@ref(fig:fig1main).
We also want to refere here to Fig. \@ref(fig:fig2main).
In some cases we also need supplementary data. Please see Suppl. Fig. S\@ref(fig:fig1supp).
Please note that the 'S' before the reference should optimally NOT …Run Code Online (Sandbox Code Playgroud) 我在使用knitr在Sweave中使用R studio生成的LaTeX报告中正确显示由ggplot2生成的图中的字体时出现问题.
起初我无法使用波兰字体正确生成pdf,但是在这篇文章中解决了这个问题:
简而言之,作者建议使用Cairo包(在R中)使用ggplot2生成图.
这对我有用 - 一次 - >意味着我能够生成一个带有波兰字符的情节,但是当我尝试在sweave文档中使用它来使用这样的knitr生成LaTeX报告时:
<<pieniadze_graph,fig=TRUE,echo=FALSE>>=
library(Cairo)
cairo_pdf("TutorialExercisesPart2-pieniadze_graph.pdf")
plot1 <- qplot(expenditure, data = cas) + xlim(0, 8000) +
xlab(expression(paste("Pieni?dze wydane na ucznia ($)"))) +
ylab("Liczba szkó??????")
print(plot1)
@
Run Code Online (Sandbox Code Playgroud)
我收到一个错误:
Running pdflatex on TutorialExercisesPart2.tex...failed
Run Code Online (Sandbox Code Playgroud)
在调查发生的同时 - >我发现cairo生成的文件是空白的(有一个给cairo_pdf命名的pdf文件但是无法用pdf查看器打开 - >错误无法打开文本文件)
现在需要注意一点:cairo_pdf函数需要设置文件名.所以我给pdf一个名字,需要稍后由tex文件使用,格式为filename-chunk_name.pdf(动态报告非常多:P)
所以我不是cairo_pdf选项.有没有办法在没有cairo_pdf选项的情况下生成正确的pdf文件?
没有cairo-pdf,我无法在这个主题上找到更多...
当我删除cairo部分时,我的tex文件很好地生成了一个丑陋的点标签PDF文件...


使用 magrittr Piper 运算符,我们对向量进行操作。
strings <- "a b c"
strings %>% strsplit(" ") # Here we get a list
> strings %>% strsplit(" ")
[[1]]
[1] "a" "b" "c"
Run Code Online (Sandbox Code Playgroud)
但假设我们只想获取此列表的单个元素。这需要我们(获取第一个元素的示例):
(strings %>% strsplit(" "))[[1]][1] # Notice the braces around the expression..
Run Code Online (Sandbox Code Playgroud)
现在我的问题是:有没有一种方法可以使用管道运算符而不需要将整个表达式放在大括号中?我认为,如果我们不必将其写入临时变量或使用括号而是使用某种特殊的管道运算符,那么它会更加透明。
还有其他方法可以做到这一点吗?