标签: kableextra

使用 kable 或 kableExtra 左对齐表格标题

是否可以左对齐表格标题?我对 APA6th 规则感到恼火,但我必须以某种方式左对齐表格标题。

以这张表为例:

library(knitr)
library(kableExtra) 

kable(mtcars[1:10, 1:6], format = "latex", caption = "I need this left-aligned.", booktabs = T) %>% 
      kable_styling(position = "left") %>%
      group_rows("Group 1", 4, 7) %>%
      group_rows("Group 2", 8, 10)
Run Code Online (Sandbox Code Playgroud)

标题将始终在表格上方居中,即使我将表格位置与kable_styling(position = "left").

编辑:请参阅此处了解至少对我有用的临时解决方案。

r r-markdown kableextra kable

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

替换kable/R markdown中的列名称

我的数据框具有丑陋的列名,但在我的报告中显示表时,我想要他们的"真实"名称,包括特殊字符'(',新行,希腊字母,重复名称等.

是否有一种简单的方法来替换knitr中的名称以允许这种格式化?

提出的解决方案

我试图做的是禁止打印数据框名称,并使用add_header_above跨越多列的更好的名称和名称.我见过的一些建议说要使用:

x <- kable(df)
gsub("<thead>.*</thead>", "", x) 
Run Code Online (Sandbox Code Playgroud)

删除列名称.这很好,但问题是,当我随后add_header_above,原来的列名回来了.如果我使用col.names=rep('',times=ncol(d.df))kable(...)名称是走了,但该行仍然存在,离开我的新的列名和表体之间的间隙.这是一个代码块来说明:

```{r functions,echo=T}
drawTable <- function(d.df,caption='Given',hdr.above){
require(knitr)
require(kableExtra)
require(dplyr)

hdr.2 <- rep(c('Value','Rank'),times=ncol(d.df)/2)
x <- knitr::kable(d.df,format='latex',align='c',
  col.names=rep('',times=ncol(d.df))) %>%     
kable_styling(bootstrap_options=c('striped','hover',
  'condensed','responsive'),position='center',
   font_size = 9,full_width=F)

x %>% add_header_above(hdr.2) %>%
  add_header_above(hdr.above)
}
```

```{r}
df <- data.frame(A=c(1,2),B=c(4,2),C=c(3,4),D=c(8,7))
hdr.above <- c('A2','B2','C2','D2')
drawTable(df,hdr.above = hdr.above)
```
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

r r-markdown kableextra kable

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

如何在闪亮的应用程序中使Kable Table React()?闪亮+电缆

我正在尝试使电缆表具有反应性,并将其导出到闪亮的应用程序中。已经尝试在服务器内部使用renderDataTable/ renderTable,并且将输出功能作为datatableOutput/ 进行了尝试tableOutput,但是没有运气,下面是代码行。

  output$tableset <- renderDataTable({
kable(spread_bole) %>%
  kable_styling(font_size = 15 ,bootstrap_options = c("striped","hover", "condensed")) })

tableOutput("tableset")      
Run Code Online (Sandbox Code Playgroud)

r shiny kableextra kable

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

xaringan:kableExtra::kable_styling() 和更宽的表

我正在使用 xaringan 创建一个 html 演示文稿,其中包括使用 kable() 生成的一些表格。不幸的是,这些表非常窄,所以我想在 kable_styling 中使用 full_width 选项。此外,我想关掉条纹设计。一个例子:

library(kableExtra)

head(iris) %>% 
knitr::kable('html') %>%
kableExtra::kable_styling(full_width = TRUE, bootstrap_options = "basic")
Run Code Online (Sandbox Code Playgroud)

但是,xaringan 似乎忽略了 kable_styling() 选项。是否有可能实现这些目标,或者在使用 xaringan 时修改 kable 表的样式?

r-markdown kableextra kable xaringan

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

Kable(kableExtra)针织RMarkdown html_document中的垂直滚动条?

使用生成的垂直滚动条kableExtra在 RStudio 中有效,但在 knitted html_document 中不起作用。

例子

获取以下Rmd文件

---
  output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE, message = FALSE, warning = FALSE)
library(dplyr)
library(kableExtra)
```

```{r}
iris %>% 
  kable %>%
  kable_styling("striped", full_width = F)
```
Run Code Online (Sandbox Code Playgroud)

在 RStudio 中运行块时,我看到一个垂直滚动条

在此输入图像描述

但是编织后,垂直滚动条消失了,整个 data.frame 都被打印了

在此输入图像描述

如何让垂直滚动条在 knitted HTML 中显示,就像在 RStudio 中一样?

r knitr r-markdown kableextra

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

合并 kable 在 Rmarkdown 中创建的乳胶表中的列标题

我在 Rmarkdown 中使用 kable 创建了一个乳胶表,如下所示:

在此输入图像描述

---
output: pdf_document
header-includes:
  - \usepackage{xcolor}
---

```{r, message=FALSE, warning=FALSE, echo=FALSE}
library(kableExtra)
library(tidyr)
library(dplyr)

data(iris)
iris %>% 
  as_tibble %>%
  gather(.,key = variable,value = value,-Species) %>%
  group_by(Species,variable) %>%
  summarise(value=mean(value)) %>%
  ungroup %>%
  spread(.,key = variable,value = value) %>%
  mutate(`Percentage Change`=`Petal.Length`/`Petal.Width`*100) %>%
        kable(.,format='latex',
        align='c',linesep='',
        booktabs=TRUE,escape=FALSE) %>%
  add_header_above(.,c(' '=1,'Parts'=4,' '=1),
                   escape = FALSE) %>%
  kable_styling(latex_options = c('striped','HOLD_position','scale_down'))
```
Run Code Online (Sandbox Code Playgroud)

我希望将列标题“物种”和“百分比变化”分别与它们上面的空白区域合并,这样就Species可以放在两个标题行的中间,同时Percentage Change (Petal Length/ Petal Width)可以占据两行,而不是有一个空的上面的行,并防止其他列下面有空行。

不知道是否可以kable更好地修改它,也欢迎乳胶“黑客”建议。

谢谢!

r-markdown kableextra kable

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

更改R的kable中的列宽不会更改标题的宽度

我正在使用kableRMarkdown中创建我的数据表.您可以使用column_spec命令调整列宽,但是这似乎只调整数据的列本身,但是也不调整标题行的列宽.所以现在我的标题不再与其关联的数据列对齐.

例如:

    y <- knitr::kable(head(mtcars), "html")
    column_spec(y, 1:4, width="5em")
Run Code Online (Sandbox Code Playgroud)

r knitr kableextra kable

6
推荐指数
1
解决办法
1395
查看次数

使用 r Markdown、kable 和 kableExtra 呈现表格的问题

我正在尝试使用 r markdown、kable 和 kableExtra 输出乳胶表。我在表格渲染代码中收到一个错误,该错误不是由 R 生成的乳胶代码的一部分。

编码:

outTab <- m.OutTab %>%
    kable(format='latex',  booktabs=T ,
          #caption = "Population Trend",
          digits=1, 
          row.names=FALSE, 
          align='lccccc', 
          col.names = names_spaced,
          escape = FALSE)
Run Code Online (Sandbox Code Playgroud)

其中“m.OutTab”是一个包含要渲染的表格的矩阵,

错误:

Error producing PDF.
! Misplaced \noalign.
\addlinespace ->\noalign 
                         {\ifnum 0=`}\fi \@ifnextchar [{\@addspace }{\@addsp...
l.116    \addlinespace

Error: pandoc document conversion failed with error 43
Run Code Online (Sandbox Code Playgroud)

这些代码(“\noalign ...”)不是“outTab”的一部分。

知道如何解决此错误吗?

markdown r kableextra kable

6
推荐指数
2
解决办法
4948
查看次数

RMarkdown kable 垂直对齐单元格

我正在使用 RMarkdown 编写报告,并使用 kable 和 kableExtra 来格式化和打印表格。这是我想要的表格看起来像(在 Word 中制作的):

中间单元格对齐

我正在努力对垂直居中进行排序("Number of Incident Occurences"顶部和底部之间的空间,以便文本在行的中间对齐,在列的左侧。

请注意,我正在创建 PDF 报告而不是 html。

这是一个最小的例子:

df <- data.frame(a = letters[1:5], b = 1:5)
names(df) <- c("A very very very very very very very very very very very very very very very very very very long title",
               "A short title")

df %>% kable(format = 'latex', linesep = "", align = 'c', escape = F) %>% kable_styling(full_width = T)
Run Code Online (Sandbox Code Playgroud)

这是输出的样子:

在此处输入图片说明

垂直对齐似乎正在推向顶部。我遇到了“m”,但这只是中间对齐列。我想知道我是否需要为所有行指定一些特殊的东西是 row_spec() align = "m",但是当我这样做时,它会抱怨......有什么想法吗?

latex r-markdown kableextra kable

6
推荐指数
3
解决办法
4868
查看次数

在 RMarkdown 表中引用

我正在尝试创建一个表,其中包含内置于表中的引文。这是我试图实现的目标的视觉效果。

期望的输出

据我所知,您只能在中rowvarscolvars中添加脚注kableExtra(喜欢那个包)。

# Create a dataframe called df
Component <- c('N2','P3')
Latency <- c('150 to 200ms', '625 to 800ms')
Location <- c('FCz, Fz, Cz', 'Pz, Oz')
df <- data.frame(Component, Latency, Location)
Run Code Online (Sandbox Code Playgroud)

以下是我在阅读kableExtraGit 页面后的尝试

# Trying some code taken from the kableExtra guide
row.names(df) <- df$Component
df[1] <- NULL
dt_footnote <- df
names(dt_footnote)[1] <- paste0(names(dt_footnote)[2],
                                footnote_marker_symbol(1))

row.names(dt_footnote)[2] <- paste0(row.names(dt_footnote)[2], 
                                footnote_marker_alphabet(1))
kable(dt_footnote, align = "c", 
      # Remember this escape = F
      escape = F, …
Run Code Online (Sandbox Code Playgroud)

latex r-markdown kableextra kable

6
推荐指数
1
解决办法
1067
查看次数

标签 统计

kableextra ×10

kable ×9

r-markdown ×7

r ×6

knitr ×2

latex ×2

markdown ×1

shiny ×1

xaringan ×1