WedX - журнал о программировании и компьютерных науках

Можете ли вы иметь таблицу полной ширины в pdf-файлах tufte_handout?

Я использую класс tufte::tufte_handout в RMarkdown/Rstduio. Есть ли способ получить таблицу полной ширины, как вы можете получить изображение/график полной ширины?

РЕДАКТИРОВАТЬ: Просто чтобы быть ясным, я знаю, как сделать фигуры полной ширины с соответствующими параметрами фрагмента. Здесь я хочу добиться такого же эффекта для таблицы.

Мне также интересно, является ли это скорее латексным вопросом, чем rmarkdown, поэтому добавил этот тег.

EDIT2: В качестве минимального нерабочего примера см.:

---
title: "Untitled"
output: tufte::tufte_handout
---

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


```{r, fig.fullwidth = TRUE}
cars %>% t %>% head(20) %>% pander
```
31.10.2017

Ответы:


1

Единственный способ заставить полноразмерную таблицу работать в Tufte Handouts — это использовать (потрясающий) пакет kableExtra. Этот пакет дает вам гораздо больше возможностей форматирования и редактирования, и я бы рекомендовал ознакомиться с этими руководствами здесь: Guide 1 и руководство 2.

Это код, с которым я работал:

---
title: "Tufte Handout"
output:
  tufte::tufte_handout:
    includes:
      in_header: testheader.tex
    latex_engine: xelatex
---

```{r setup, include=FALSE}
library(tufte)
knitr::opts_chunk$set(tidy = FALSE, cache.extra = packageVersion('tufte'), 
kable.force.latex = TRUE)
options(htmltools.dir.version = FALSE)
```

## Full width table

This is a test. This is a test. This is a test. This is a test. This is a 
test. This is a test. This is a test. This is a test.

```{r, resize.width=100, echo=FALSE}
library(knitr)
library(magrittr)
library(kableExtra)
knitr::kable(mtcars[1:6, 1:6], format = "latex", booktabs=T, 
table.envir='table*') %>%
  kable_styling(latex_options = c("hold_position"), full_width=T)
```

Заголовок Tex (testheader.tex) для kableExtra:

\usepackage{xcolor}
\usepackage{background}
\usepackage{booktabs}
\usepackage{longtable}
\usepackage{array}
\usepackage{multirow}
\usepackage{wrapfig}
\usepackage{float}
\usepackage{colortbl}
\usepackage{pdflscape}
\usepackage{tabu}
\usepackage{threeparttable}

Несколько вещей важны, чтобы заставить его работать, поэтому я выделяю его здесь. А именно: kable.force.latex = TRUE и table.envir='table*'. Очевидно, вам может понадобиться не все, что вы найдете в коде и заголовке текста, поэтому, пожалуйста, не стесняйтесь вносить соответствующие изменения.

Вывод выглядит следующим образом:

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

31.10.2017
  • Спасибо, но это относится только к цифрам, а не к таблицам. Я думаю, что, возможно, я недостаточно ясно выразился в своем первоначальном вопросе, поэтому отредактировал сейчас. 01.11.2017
  • Извините, я должен был прочитать ваш вопрос немного более внимательно. Я изменю свой ответ. 01.11.2017
  • Новые материалы

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..

    ИИ в аэрокосмической отрасли
    Каждый полет – это шаг вперед к великой мечте. Чтобы это происходило в их собственном темпе, необходима команда астронавтов для погони за космосом и команда технического обслуживания..


    Для любых предложений по сайту: [email protected]