标签: flextable

Rmarkdown 中的 flextable 自动调整到 word doc 导致表格超出页边距

嗨,我正在尝试flextable在 Rmarkdown .doc 文档中使用来格式化我的表格。我喜欢flextable提供(但对其他类似包开放)的简单格式选项,但发现我认为应该是基本功能的东西并不总是有效。

我想让表格适合 word 文档的宽度,以便如果需要的文本将在一列内换行以适应,但如果页面上有可用空间,列将变宽,但不会达到该列的程度太宽以至于没有显示所有数据。

我在下面做了一个例子来说明我的问题。默认情况下,所有列都具有相同的宽度,并且文本会被换行以适应,但因此会浪费空间。我想将列拟合到数据中(使用autofit),但这会使列如此宽以至于它们从屏幕上消失。我希望使用mpg,vscarb更广泛的快乐媒体,但仍在发生一些文本换行。例如我想要这个:

期望输出

显然我可以手动更改宽度,flextable::width但我的表格是通过自动化过程制作的,所以我不知道我希望每列有多宽。

这是我的示例,它显示了 with 或 eithout 的问题 autofit

---
title: "TestTable"
output: word_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)


suppressWarnings(suppressPackageStartupMessages({library(knitr)
  library(pander)
  library(flextable)
  library(tidyverse)
library(flextable)}))
```

## Normal Table
Without extra formatting, wraps text so that it fits on the page, but there is no need for column widths to be equal and could be wider on the page …
Run Code Online (Sandbox Code Playgroud)

r flextable r-markdown

13
推荐指数
3
解决办法
5355
查看次数

Rmarkdown docx中的flextable无法在if语句中打印if其他文本

我正在尝试使用该程序包flextable在Rmarkdown中获取一些格式正确的表(转到Word文件)。这些表通常工作正常,但是如果我将其放在if语句中,则如果if语句中还有其他内容在打印,则看不到该表。有什么想法吗?

我的例子(一起运行):

---
title: "Testing"
output: 
  word_document:
    reference_docx: styles.docx
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

## R Markdown

```{r defaults}
library(pander)
library(knitr)
library(flextable)

```
Run Code Online (Sandbox Code Playgroud)

第一个测试工作正常-否if语句和表两边的新行

## test 1 table no if statemnets

```{r test1, echo = FALSE, results = 'asis'}

  test <- data.frame (c = 1:5, x = 6:10)

  testft <- flextable(test)
  testft

```
Run Code Online (Sandbox Code Playgroud)

第二个测试有一个if语句,没有其他文本,可以正常工作

## test 2 if statement no other text

```{r test2, echo = FALSE, results = 'asis'}
RunTable <- TRUE
if(RunTable){

  testft …
Run Code Online (Sandbox Code Playgroud)

r flextable r-markdown

12
推荐指数
1
解决办法
298
查看次数

如何使用uiBinder为GWT 2.4设置flextable

我正在尝试使用uiBinder设置flextable.我正在使用GWT 2.4,我知道如何做一个flextable,但不是uiBinder.我发现了这个问题:如何在UiBinder中为GUI Web Toolkit添加行添加行?被问到了SO,但没有关于如何做到这一点的例子.

因此,如果我将小部件声明为:

@UiBinder FlexTable flexTable;
Run Code Online (Sandbox Code Playgroud)

如何使用uiBinder初始化一个空行,该行包含两列和一个用@UiConstructor或(provider = true)命名列的标题行?

gwt flextable uibinder

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

在弹性表中添加表头 IN 表

我正在尝试使用 flextable 制作一个漂亮的表格,该表格可以编织成单词,并带有描述性横幅/标题

示例数据:

trialdata<-structure(list(` ` = c("Number per team", "Average height", "vegetarian", 
"meat", "carrot", "cucumber", "orange", 
"banana", "pepper", "tangerine", "Average Score", 
"Range Score", "Number of children", "Number of parents", 
"Number of grandparents"), `year 1` = c("20", "2", 
"25", "12", "4", "7", 
"7", "37", "21", "3", 
"-0.3", "78 : 1", "61", "19", 
"39"), `Year 2` = c("98", "28.2", "23", 
"1", "8", "6", "1", 
"36", "2", "29", "-0.2", "3 : 2", 
"6", "18", "9"), `Year 3` = c("88", 
"28.2", "24", "1", …
Run Code Online (Sandbox Code Playgroud)

r flextable knitr

9
推荐指数
1
解决办法
464
查看次数

在 r markdown 循环中使用 flextable 不生成表格

我有很多表要创建,并且正在尝试在循环中创建它们。我在 rstudio 中使用带有 rmarkdown 的 flextable。print(theFlextable)在循环中使用命令会生成文本列表而不是表格。这发生在 docx 和 html 输出类型上。如果我不使用循环 flextable 会正确呈现。这是一个演示:

---
title: "Demo"
output: word_document
---

```{r setup, include=FALSE}
library(flextable)
```
## This Works
```{r iris, echo=F, message=F, error=F, results='asis'}
ft<-flextable(iris[1:10,])
ft
```
## This produces no output
```{r echo=F, message=F, error=F, results='asis'}
doThese<-c("setosa","virginica")
for (i in doThese){
  tbl<-subset(iris, Species==i)
  ft<-flextable(tbl[1:10,])
  ft
}
```
## This produces incorrect output
```{r echo=F, message=F, error=F, results='asis'}
doThese<-c("setosa","virginica")
for (i in doThese){
  tbl<-subset(iris, Species==i)
  ft<-flextable(tbl[1:10,])
  print(ft)
  cat("\n\n")
}
``` …
Run Code Online (Sandbox Code Playgroud)

r flextable r-markdown

8
推荐指数
2
解决办法
2087
查看次数

带有 MS-Word 输出的 Bookdown 中的表交叉引用?

如何使表格交叉引用在具有所有输出格式 pdf、docx 和 html 的 bookdown 文档中起作用?或者更具体地说,我怎样才能获得表格交叉引用flextables

下面是一个最小的工作示例。第二个表,使用kable(),让我几乎一直到那里。问题是 docx 输出中的表格渲染完全无法使用(不是在这个 MWE 中,而是在我的实际用例中)。我考虑有条件地创建表格,flextable用于 docx 输出以及kablepdf 和 html 输出。flextable在 docx 输出中看起来不错。但是表引用不起作用!

---
title: "A Book"
author: "Frida Gomam"
site: bookdown::bookdown_site
documentclass: book
output:
  bookdown::word_document2: default
  bookdown::pdf_book: default
  bookdown::gitbook: default
---

# Hello World

```{r setup, include=FALSE}
library(dplyr)
library(flextable)
```

<!--- this tabulates in docx and html output --->
```{r, test01, echo = FALSE, eval = !knitr::is_latex_output()}
mtcars %>%
  head() %>%
  flextable() %>% …
Run Code Online (Sandbox Code Playgroud)

r ms-word flextable bookdown kable

8
推荐指数
1
解决办法
775
查看次数

如何在灵活的迷你吧上叠加值?

我能得到的最接近的 flextable 是这样的:

在此输入图像描述

我想要实现的是这样的 - 用 ggplot2 实现:

在此输入图像描述

有任何想法吗?或者这是一个功能请求?

用于生成弹性表的代码:


library(tibble)
library(flextable)


tib <- tibble(v1 = letters[1:4],
              v2 = c(1, 3, 5, 2))


tib %>% 
  flextable()%>% 
  width(j = 1:2, width = c(0.5, 1.5)) %>% 
  mk_par(j = 2,
         value = as_paragraph(as_chunk(v2, formater = function(x) sprintf("%.0f", x)),
                              " ",
                              minibar(value = v2, max = sum(v2))
                              ),
  part = "body")

Run Code Online (Sandbox Code Playgroud)

r flextable

8
推荐指数
1
解决办法
341
查看次数

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

是否可以从 arial 更改 flextable 默认字体

我喜欢 David Gohel 的 Office 和 Flextable 包,它们确实是编写具有复杂布局的 Word 文档报告的灵活替代方案,而这在 R markdown 中是无法实现的。

我已经使用officer为段落和表格创建了自定义样式,但现在我使用flextable来自定义单个单元格的格式,尽管它们似乎总是采用arial字体,无论word文档中的字体(calibri)如何。

flextable 使用的 word 文档中是否有特定的样式,或者是否有修改字体的命令。

到目前为止,我最接近的答案是 options("ReporteRs-default-font" = "Arial") 函数。官员或弹性人员是否有等效的命令?

非常感谢您的指导。

fonts r flextable officer

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

将Word样式(表或段落)应用于flextable对象

我正在尝试将Word样式(表格或段落)应用于灵活对象.我的动机是找到一种方法来阻止flextable通过knitr输出到Word .docx文档时在分页符处分割行.例如,在下面的代码中,我试图将"Table of Figures"段落样式应用于R markdown中的flextable:

---
title: " "
output:
  word_document: default
---



<div custom-style = "Table of Figures">
```{r, echo = F, message = F}
library(flextable)
library(magrittr)

head(cars) %>%
  regulartable

```
</div>
Run Code Online (Sandbox Code Playgroud)

但是,这似乎不起作用.有谁知道如何将表格和/或段落样式应用于flextable对象?

r ms-word flextable

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

标签 统计

flextable ×10

r ×8

r-markdown ×3

gwt ×2

ms-word ×2

bookdown ×1

fonts ×1

kable ×1

knitr ×1

officer ×1

uibinder ×1