我有一个 rmarkdown 演示文稿(ioslides),其中包含 3 张幻灯片,其中的流程图在DiagrammeR
美人鱼中工作。以下保存为 .Rmd 的文件可以重现该示例(至少在我的机器上,希望你的也是如此):
---
title: "Untitled"
author: "author"
date: "28 de enero de 2018"
output: ioslides_presentation
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
require(DiagrammeR)
```
## DiagrammeR's mermaid
It's not producing consistent results in slides when using line breaks.
```{r flow}
mermaid("
graph LR
C(CLIENTES <br>Clients) --> D[Doctors]
U(USUARIOS <br>Users <br>Patients <br>Nurses) --> D
D --> S(SALIDAS <br>Medicines <br>Surgery)
style C fill: #f5f5dc
style D fill: #4682b4
style U fill: #ffe4c4
")
```
## Second attempt
```{r flow2}
mermaid("
graph LR
C(CLIENTES <br>Clients) --> D[Doctors]
U(USUARIOS <br>Users <br>Patients <br>Nurses) --> D
D --> S(SALIDAS <br>Medicines <br>Surgery)
")
```
## Third attempt
```{r flow3}
mermaid("
graph LR
C(CLIENTES <br>Clients) --> D[Doctors]
U(USUARIOS <br>Users <br>Patients <br>Nurses) --> D
D --> S(SALIDAS <br>Medicines <br>Surgery)
style C fill: #f5f5dc
style D fill: #4682b4
style U fill: #ffe4c4
")
```
运行时,它会生成两个正常大小的图表和一个小的图表。我注意到的事情:
- 被修改的最后一个块(输入或删除的文本,甚至回车),得到正确显示(如果我“触摸”它们的树,通常第一个显示错误)
cache = FALSE
或者cache = TRUE
不做任何改变- 在美人鱼声明的行之间添加换行符(附加)不起作用(此处建议作为解决方案)
- 插入或删除样式声明没有区别
- 使用的浏览器没有区别(最初使用 RStudio 浏览器查看,但如果在 Firefox 中查看,显示同样错误)
- 当演示文稿输出
ioslides
更改为 时slidy
,它可以工作(这是我的替代方案,但如果有解决方案,我更喜欢 ioslides)。
相关部分 或R.Version
和Sys.info
:
> Sys.info()
sysname
"Linux"
release
"4.9.0-5-amd64"
version
"#1 SMP Debian 4.9.65-3+deb9u2 (2018-01-04)"
nodename
"pavos"
machine
"x86_64"
## R and packages Versions
> R.Version()
$`svn rev`
[1] "73796"
$version.string
[1] "R version 3.4.3 (2017-11-30)"
$nickname
[1] "Kite-Eating Tree"
> packageVersion("DiagrammeR")
[1] ‘0.9.2’
> packageVersion("rmarkdown")
[1] ‘1.8’
我所期望的:在 ioslides 输出的所有幻灯片中始终显示完整大小且颜色正确的图表的演示文稿。
谢谢