我只是偶然地看到一个示例文档,它使用toc: true
Markdown文件中的YAML头选项中的行来由Pandoc处理.并且Pandoc文档没有提到使用YAML头来控制目录的这个选项.此外,我在同一个Pandoc自述文件站点的示例文档中看到了一些任意行.
主要问题:
元问题:
注意:我的工作流程是使用Markdown文件(.md
)并通过Pandoc处理它们以获取PDF文件.它采用分层次组织的手稿编写与数学.如:
pandoc --standalone --smart \
--from=markdown+yaml_metadata_block \
--filter pandoc-citeproc \
my_markdown_file.md \
-o my_pdf_file.pdf
Run Code Online (Sandbox Code Playgroud) 我正在使用RStudio版本0.97.312运行R版本2.15.3.我有一个脚本从各种来源读取我的数据并创建几个data.tables.然后我有另一个r脚本,它使用在第一个脚本中创建的data.tables.我想将第二个脚本转换为R降价脚本,以便分析结果可以作为报告输出.
我不知道的目的read_chunk
,而不是source
.我read_chunk
没有工作,但source
正在工作.无论哪种情况,我都无法在RStudio的工作区面板中看到对象.
请解释之间的差异read_chunk
和source
?我为什么要使用其中一个?为什么我的.Rmd脚本不起作用
这是行不通的.我收到以下消息
错误:找不到对象'z'
两个简单的文件......
测试源到rmd.R
x <- 1:10
y <- 3:4
z <- x*y
Run Code Online (Sandbox Code Playgroud)
测试源.Rmd
Can I run another script from Rmd
========================================================
Testing if I can run "test of source to rmd.R"
```{r first part}
require(knitr)
read_chunk("test of source to rmd.R")
a <- z-1000
a
```
The above worked only if I replaced "read_chunk" with "source". I
can use the vectors outside of the …
Run Code Online (Sandbox Code Playgroud) 是否有(内置)方法设置在Pandoc YAML标头中使用的不同字体(或字体)?理想情况下,我会在我的Markdown文件的YAML标题中执行以下操作:
---
font: MySansSerifFontName
...
Run Code Online (Sandbox Code Playgroud)
当然,我在Linux(Ubuntu)上使用TexLive pandoc
.
我有一些ggplot2
包含大量文本的情节(没有办法解决这个问题),我正在建立一个内部*.Rmd
,就像这样:
---
title: "SO Test"
output: pdf_document
---
```{r}
library(ggplot2)
df <- data.frame(rep(1:5,5),rep(1:5, each=5),rep("Test",5))
colnames(df) <- c("x", "y", "word")
ggplot(data = df, mapping = aes(x = x, y = y, label = word)) + geom_text()
```
Run Code Online (Sandbox Code Playgroud)
这很好用,给我一些类似下面的PDF格式.
我现在想让这些标签(Test
)尽可能大而不会过度绘图.
我的问题是我现在看到2个 "杠杆"我可以拉动来改变字体大小:
ggplot2
,改变,添加,说,geom_text(size=12)
knitr
(或Rmarkdown
?),添加一个块选项,如`fig.width = 15,fig.height = 15),这也改变了相对于整体绘图大小的字体大小(原因我不是真的了解).显然,1.将是直截了当的方式,但我需要geom_text(size=...)
根据输出的大小进行调整,例如,当linewidth
LaTeX中的更改或我的博客帖子的列宽时.至少可以说,这似乎是不优雅的.
我如何以优雅,可扩展的方式实现这一目标,从而产生漂亮的情节?
我对此仍然有点模糊,在工具链中哪里(Rmarkdown
?,Knitr
?GGplot2 …
主要问题: 有没有办法标记Pandoc关闭附加参考书目但是仍然插入正确的内联引用?
我正在写一个Markdown/Knitr文档,它有一个主文件(article.Rmd
)和几个"子"文件,它们使用Knitr的"child ="块选项包含在主文件中.
子文件基本上是主文章文件的一部分,只是分开以便于编辑和管理.在这些子节文件中,我使用Markdown文本中的引文(例如"@ author_title_1999")来引用各种文章.主文件和每个子文件都有一个YAML标头,提供BibTex文件位置,例如:
---
bibliography: mybibfile.bib
...
Run Code Online (Sandbox Code Playgroud)
(不止一次包含此YAML条目不是问题;请参阅元数据块的自述文件.)
当我使用Knitr编译整个文档时,会创建一个大的Markdown文档.然后我使用Pandoc --filter pandoc-citeproc
选项来管理引用.Pandoc插入了很好的引用,并附上所引用论文的列表作为参考/参考书目.凉.
当我编写和编辑单个子节时,我使用相同的引用编译,它产生正确的内联引用,但不幸的是,最后也会附加引用,即使它只是较大文档的一部分.我想用内嵌引用来编译这些小的子节,但最后没有参考书目.
knit
当我调用在调用内部使用的函数时,我遇到了重复标签错误knit
。如果我标记这些块,问题就会消失。有没有办法some_function
以不与父调用冲突的方式进行调用knit
?
library(knitr)
some_function <- function(){
knit(text ="
```{r }
1
```
")
}
cat(knit(text ="
```{r }
some_function()
```
```{r }
some_function()
```
"))
Run Code Online (Sandbox Code Playgroud)
输出:
```r
some_function()
```
```
## Error: duplicate label 'unnamed-chunk-1'
```
Run Code Online (Sandbox Code Playgroud) 我发现自己reshape2::melt
用来data.frame
从一个层次list
的data.frame
对象中获得一个"长" .但是,结果的列名称具有标记为"L1","L2"等的列表层次结构级别.但是,由于这些级别具有含义,因此我想为这些列赋予有意义的名称.最好的方法是什么?可以使用单次调用来完成melt
吗?
我不是要结婚melt
或者reshape2
,所以我愿意接受其他方法或包.
假设我们有一个data.frame
对象的分层列表,例如:
library(reshape2)
x <- structure(list(cyl_6 = structure(list(gear_3 = structure(list( mpg = 1:2, qsec = 3:4), .Names = c("mpg", "qsec"), row.names = c(NA, -2L), class = "data.frame"), gear_4 = structure(list(mpg = 5:6, qsec = 7:8), .Names = c("mpg", "qsec"), row.names = c(NA, -2L), class = "data.frame")), .Names = c("gear_3", "gear_4")), cyl_8 = structure(list(gear_3 = structure(list(mpg = 9:10, qsec = 11:12), …
Run Code Online (Sandbox Code Playgroud) 我对使用formattable
R 包中的工具感兴趣,但我只想在表中显示有变化的地方。也就是说,我想要kableExtra
通过collapse_rows()
函数在包中提供的分层行标签。
例如,使用kable()
and kableExtra
,我可以这样做:
library(dplyr)
library(knitr)
library(kableExtra)
iris %>%
group_by(Species) %>%
slice(1:2) %>%
select(Species, everything()) %>%
kable() %>%
collapse_rows(1, valign="top")
Run Code Online (Sandbox Code Playgroud)
产生这个:
但是,我想使用formattable
包和函数来执行此操作,以便我可以在输出期间在特定列上运行任意函数。具体来说,我想添加“迷你图”作为新列。我可以使用knitr
and做到这一点formattble
,但collapse_rows
据我所知,我失去了。
有什么办法可以折叠行formattable
吗?
r ×5
knitr ×3
pandoc ×3
r-markdown ×2
bibliography ×1
citations ×1
fonts ×1
formattable ×1
ggplot2 ×1
list ×1
melt ×1
plot ×1
reshape2 ×1
rstudio ×1
yaml ×1