Как установить размер таблицы rpivotTable в документе rmarkdown

#r #r-markdown #htmlwidgets #rpivottable

Вопрос:

Я хотел бы включить несколько rpivotTable s в вывод HTML rmarkdown (документ, flexdashboard, другие параметры, которые приводят к созданию отдельного HTML-файла, в порядке; я не могу использовать для этого Shiny). Как я могу указать фиксированную ширину и/или высоту для этого htmlwidget?

Проблема, с которой я сталкиваюсь, заключается в том, что htmlwidget rpivotTable, похоже, изменяет свой размер в зависимости от масштабирования моего браузера и часто перекрывает текст в документе или последующий вывод rpivotTable (см. Скриншот). Это ухудшается каждый раз, когда я что-то меняю в таблице rpivotTable (например, перетаскиваю новую переменную строки или столбца или устанавливаю фильтр).

Некоторые поисковые запросы подсказывают, что мне нужно узнать о виджетах html и изменении размера javascript, если это так, можете ли вы указать мне правильный метод изменения размера для этого htmlwidget или предложить функцию изменения размера здесь? Я понимаю, что это сложно, так как сводные таблицы должны изменять размер, но давайте предположим, что я знаю правильный размер (например, 1000 пикселей в ширину, 500 пикселей в высоту), или что я никогда не буду изменять параметры, которые потребовали бы изменения размера, и его жесткое кодирование в некоторые заданные размеры будет в порядке. пример вывода html

Код для приведенного выше вывода (foo.rmd):

 ---
title: "test_rpt"
output: html_document
---

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

## Plot1

```{r}
rpivotTable(mtcars, rows = 'mpg', aggregatorName = 'Sum', vals = 'cyl')
```

## Plot2

```{r}
rpivotTable(mtcars)
```
 

Ответ №1:

rpivotTable имеет width и height аргументы, которые вы можете использовать. Вот ссылка, касающаяся изменения размера HTML-виджетов для Rmarkdown, которая позволит обеспечить больший контроль.

 ---
title: "test_rpt"
output: html_document
---
```{r setup, include=FALSE}
library(rpivotTable)
```

## Plot1

```{r}
rpivotTable(mtcars, rows = 'mpg', aggregatorName = 'Sum', vals = 'cyl', width="600px",     height="800px")
```

## Plot2

```{r}
rpivotTable(mtcars)
```
 

введите описание изображения здесь

Комментарии:

1. Эй, спасибо! Это действительно помогает и, по крайней мере, приводит меня к тому, что при создании документа первая диаграмма не переполняет вторую. Есть идеи, как уберечь таблицу rpivotTable от переполнения других элементов документа после его изменения размера? Например, если я уменьшу масштаб своего браузера и что-то изменю в таблице rpivotTable, она расширится, чтобы заполнить окно моего браузера; если я увеличу масштаб своего браузера и что-то изменю, она уменьшится, чтобы заполнить окно моего браузера. Можно ли отключить такое поведение?