如何在 r markdown 中将 kable 和 ggplot 对齐在一行(并排)?

2023-12-21

我正在尝试编织一个 r markdown 文件pdf,但我无法将 ggplot 和 kable 对齐在一行中。

我尝试过以下方法:

  • 猫(“\双列”)
  • kable_styling(位置=“float_right”)

下面是一个最小的、可重现的示例

---
title: "Untitled"
output: pdf_document
classoption: landscape
---

\newpage

```{r cars, echo=FALSE, fig.width=3, fig.height=3, results="asis", message=FALSE}
library(dplyr)
library(knitr)
library(kableExtra)
library(ggplot2)

dt <- split(mtcars, f = mtcars[, "cyl"]) %>% lapply(., function(x) x[1:5, 1:4])

for (i in seq_along(dt)) {

  print(
    kable(dt[[i]]) %>% kable_styling("striped") %>% add_header_above(c(" " = 1, "Group 1" = 2, "Group 2" = 2))
  )

  print(
    ggplot(data = dt[[i]], aes(x = mpg, y = cyl, group = 1)) + 
    geom_line(aes(y = disp), linetype = "solid", colour = "#000000")
  )

  cat("\\pagebreak")
}
```

这是一种使用的可能性multicolLatex 包和两个自定义 Latex 命令,以避免在编织过程中更改 multicol Latex 代码:

---
title: "Untitled"
header-includes:
  - \usepackage{multicol}
  - \newcommand{\btwocol}{\begin{multicols}{2}}
  - \newcommand{\etwocol}{\end{multicols}}
output: pdf_document
classoption: landscape
---

\newpage

\btwocol

```{r cars, echo=FALSE, fig.width=3, fig.height=3, results="asis", message=FALSE}
library(dplyr)
library(knitr)
suppressWarnings(library(kableExtra))
library(ggplot2)

dt <- split(mtcars, f = mtcars[, "cyl"]) %>% 
  lapply(., function(x) x[1:5, 1:4])

for (i in seq_along(dt)) {
  print(
    kable(dt[[i]]) %>% 
      kable_styling("striped") %>% 
      add_header_above(c(" " = 1, 
                         "Group 1" = 2, 
                         "Group 2" = 2))
  )

  cat("\\columnbreak")

  print(
    ggplot(data = dt[[i]], aes(x = mpg, y = cyl, group = 1)) + 
      geom_line(aes(y = disp), linetype = "solid", colour = "#000000")
  )

  cat("\\pagebreak")
}
```

\etwocol

请注意,我必须抑制来自 kableExtra 的警告,因为当我使用 R v3.6.0 时,有关在 R v3.6.1 下构建的警告足以阻止第一页正确呈现。

这会产生:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 r markdown 中将 kable 和 ggplot 对齐在一行(并排)? 的相关文章

随机推荐

  • RampUsersPerSec 函数的真正作用是什么?

    我发现加特林文档对特定功能有点不清楚 rampUsersPerSec 在给定持续时间内每秒注入随机数量的用户 rate1 至 rate2 期间 dur 单位 从起始速率1注入用户 目标速率2 在给定持续时间内以每秒用户数定义 例如 在 10
  • TestFlight 处理状态

    上传新版本的应用程序后试飞 应用程序有状态加工几分钟后 程序集从列表中消失 之前没有这个问题 请问是什么原因呢 检查邮箱 您将收到来自 Apple 的邮件 如果您仍然没有收到任何邮件 请检查 plist 和权限 确保您已在 plist 中包
  • 如何在JPQL中应用正则表达式?

    我使用 JPA Hibernate 作为持久层 我需要添加一个基于正则表达式的 WHERE 子句 这样的一些模式是 SELECT FROM TableName where REGEXP LIKE ColumnName Pattern 我从结
  • SQL Server Express连接字符串

    sql server连接字符串和express版本有区别吗 By default though I don t recommend it1 Sql Express is installed as a named instance http
  • 内置可调用作为 Django Field 的默认参数

    我有一个 JSONField 需要对其应用默认字典 根据文档 我避免将可变字典传递到默认字段 这是通过将复制方法传递给默认参数来完成的 如下所示 default dict some key some value class MyModel
  • 使用 .runsettings 从代码覆盖率中排除程序集

    当为包含多个项目的解决方案运行代码覆盖率时 我注意到代码覆盖率还包括我的测试程序集 我发现一篇文章建议使用以下 runsettings 模板
  • 是否可以发出从泛型类型派生的类型,同时将其自身指定为泛型类型参数?

    想象一下以下完全合法的类型层次结构 class A
  • with 语句在 Python 2.4 中产生“无效语法”错误

    我有一些用 Python 2 7 编写的代码 如下所示 if os path exists path to my file somefile txt with open path to my file somefile txt r as r
  • 在 React Native 中更改应用程序背景颜色

    我正在尝试将 React Native 应用程序中的背景颜色从灰色更改为白色 我在用着反应导航做一个TabNavigator在我渲染它之后 我试着把这个TabNavigator在视图和集合中backgroundColor但所有屏幕都变白了
  • GitHub 不断抛出“无法提交子模块”错误,我不明白这是为什么。有任何想法吗?

    我正在尝试将我的项目放在 GitHub 上 但我一直遇到问题 我在 GitHub 网站 上创建了一个存储库 下载了客户端 克隆 基本上拖放 GitHub 给我的链接 它 将我的项目移动到克隆目录中 但我仍然没有看到文件 所以我检查了 更改
  • Pickling 经过训练的 NLTK 模型

    所以我目前正在一组手术数据上训练隐马尔可夫模型 如下所示 nltkTrainer nltk tag hmm HiddenMarkovModelTrainer range 15 range 90 model nltkTrainer train
  • 如何使用 Kubectl 隐藏列

    我使用 tmuxinator 生成一个 tmux 窗口 用于监视一些 kubectl 命令的输出 例如 watch n 5 kubectl get pods rc svc pv pvc 但有时 Kubectl 的输出变得太宽 即滚动更新后的
  • NumPy 布尔数组警告?

    我有一些 numpy 数组 可以说a b and c 并创建了一个mask适用于所有这些 我试图这样掩盖它们 a a mask where mask is a bool大批 值得注意的是 我已经验证过 len a len b len c l
  • 使用 r 包 xlsx 删除 Excel 中的工作表

    正如标题所述 我想使用 r 和 xlsx 包删除 excel 中的第二个工作表 然而 运行代码后 什么也没有发生 以下是我用来删除工作表的示例代码 path C ECOS Code Test data xlsx sheets getShee
  • 如何生成可重复的随机数序列?

    我想要一个可以生成伪随机值序列的函数 但该序列每次运行都是可重复的 我想要的数据必须在给定范围内相当好的随机分布 它不一定是完美的 我想编写一些代码 根据随机数据对其运行性能测试 我希望每台机器上的每次测试运行的数据都相同 但由于存储原因
  • 将内容文件存入带换行符的 unix 变量中

    我有一个文本文件 test txt 其中包含以下内容 text1 text2 我想将文件的内容分配给 UNIX 变量 但是当我这样做时 testvar cat test txt echo testvar 结果是 text1 text2 代替
  • 使用 Graph Api 针对租户进行角色计数

    有没有办法找到每个role存在反对tenant and number of users已分配给每个role using GraphServiceClient or GraphConnection班级 我正在使用 C 目录角色 查找租户的所有
  • Windows 中的 Jenkins 以俄语显示 UI

    我来自乌克兰 当我在浏览器中打开 Jenkins 时 我看到所有用户界面都是俄语的 我在 Windows 上运行 Jenkins 但是 Windows 配置 区域和设置 中没有俄语 格式 英语 美国 地点 美国 只有时区是乌克兰语 UTC
  • 如何在 UITabBarController 中插入 UINavigationController

    如何插入UINavigationController inside UITabBarController 目前我有主要UITabBarController像这样在应用程序委托内声明 所以选项卡是主要的 self window rootVie
  • 如何在 r markdown 中将 kable 和 ggplot 对齐在一行(并排)?

    我正在尝试编织一个 r markdown 文件pdf 但我无法将 ggplot 和 kable 对齐在一行中 我尝试过以下方法 猫 双列 kable styling 位置 float right 下面是一个最小的 可重现的示例 title