小编Kal*_*lin的帖子

我可以用pandoc中的YAML标题选项控制什么?

我只是偶然地看到一个示例文档,它使用toc: trueMarkdown文件中的YAML头选项中的行来由Pandoc处理.并且Pandoc文档没有提到使用YAML头来控制目录的这个选项.此外,我在同一个Pandoc自述文件站点的示例文档中看到了一些任意行.

主要问题:

  • 使用YAML标头可以使用哪些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)

yaml pandoc

36
推荐指数
2
解决办法
3万
查看次数

使knitr运行ar脚本:我使用read_chunk还是source?

我正在使用RStudio版本0.97.312运行R版本2.15.3.我有一个脚本从各种来源读取我的数据并创建几个data.tables.然后我有另一个r脚本,它使用在第一个脚本中创建的data.tables.我想将第二个脚本转换为R降价脚本,以便分析结果可以作为报告输出.

我不知道的目的read_chunk,而不是source.我read_chunk没有工作,但source正在工作.无论哪种情况,我都无法在RStudio的工作区面板中看到对象.

请解释之间的差异read_chunksource?我为什么要使用其中一个?为什么我的.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)

r rstudio knitr

19
推荐指数
1
解决办法
1万
查看次数

在Markdown上使用Pandoc时,如何从YAML标题中更改PDF输出字体?

是否有(内置)方法设置在Pandoc YAML标头中使用的不同字体(或字体)?理想情况下,我会在我的Markdown文件的YAML标题中执行以下操作:

---
font: MySansSerifFontName  
...
Run Code Online (Sandbox Code Playgroud)

当然,我在Linux(Ubuntu)上使用TexLive pandoc.

fonts pandoc

13
推荐指数
2
解决办法
6477
查看次数

在Rmarkdown文档中自动缩放ggplot2的字体大小(等)

我有一些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个 "杠杆"我可以拉动来改变字体大小:

  1. "内部" ggplot2,改变,添加,说,geom_text(size=12)
  2. 在绘图时,"内部" knitr(或Rmarkdown?),添加一个块选项,如`fig.width = 15,fig.height = 15),这改变了对于整体绘图大小的字体大小(原因我不是真的了解).

显然,1.将是直截了当的方式,但我需要geom_text(size=...)根据输出的大小进行调整,例如,当linewidthLaTeX中的更改或我的博客帖子的列宽时.至少可以说,这似乎是不优雅的.

我如何以优雅,可扩展的方式实现这一目标,从而产生漂亮的情节?

我对此仍然有点模糊,在工具链中哪里(Rmarkdown?,KnitrGGplot2 …

plot r ggplot2 knitr r-markdown

10
推荐指数
1
解决办法
3724
查看次数

Pandoc引用没有附加参考书目

主要问题: 有没有办法标记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插入了很好的引用,并附上所引用论文的列表作为参考/参考书目.凉.

当我编写和编辑单个子节时,我使用相同的引用编译,它产生正确的内联引用,但不幸的是,最后也会附加引用,即使它只是较大文档的一部分.我想用内嵌引用来编译这些小的子节,但最后没有参考书目.

citations bibliography pandoc

7
推荐指数
1
解决办法
1667
查看次数

如何嵌套 knit 调用来修复重复的块标签错误?

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)

r knitr

5
推荐指数
1
解决办法
2142
查看次数

如何在列表中使用reshape2 :: melt时指定级别名称?

我发现自己reshape2::melt用来data.frame从一个层次listdata.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)

r list melt reshape2

5
推荐指数
1
解决办法
1070
查看次数

如何使用formattable折叠表中的行值组?

我对使用formattableR 包中的工具感兴趣,但我只想在表中显示有变化的地方。也就是说,我想要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包和函数来执行此操作,以便我可以在输出期间在特定列上运行任意函数。具体来说,我想添加“迷你图”作为新列。我可以使用knitrand做到这一点formattble,但collapse_rows据我所知,我失去了。

有什么办法可以折叠行formattable吗?

r r-markdown formattable

5
推荐指数
1
解决办法
2787
查看次数

标签 统计

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