Необычный порядок таблиц при использовании xtable в R

Я пытаюсь напечатать несколько таблиц x в документе уценки с некоторым текстом между ними. Однако в выходном PDF-файле нет таблиц в том порядке, который я указал. Я прикрепил пример кода и вывод ниже

 ---
title: "Table Test"
author: "Nishant"
date: "December 15, 2015"
output: pdf_document
---




#XYZ Factor correlation

```{r,echo=FALSE,warning=FALSE,message=FALSE,results='asis',fig.pos='H'}

library(xtable)
options(xtable.comment = FALSE)
R.Name = c('Europe','North.America','Pacific')

x= array(0, dim = c(3,3))
colnames(x) = R.Name
rownames(x) = R.Name
print.xtable(xtable(x))
print.xtable(xtable(x))
print.xtable(xtable(x))
print.xtable(xtable(x))
print.xtable(xtable(x))
print.xtable(xtable(x))


```

\pagebreak    

#XYZ Neutralized Factor Correlation

We next present the results for neutralized factor returns. Specifically we present the correlations of the residuals of factor returns after regressing them against the global variants of each of the factor and the market. We exclude the global variant of the factor in question



```{r,echo=FALSE,warning=FALSE,message=FALSE,results='asis',fig.pos='H'}


x= array(0, dim = c(3,3))
print.xtable(xtable(x))
print.xtable(xtable(x))
print.xtable(xtable(x))
print.xtable(xtable(x))
print.xtable(xtable(x))
print.xtable(xtable(x))



```

person Nishant Kachawa    schedule 15.12.2015    source источник


Ответы (1)


Это проблема с латексом (проверьте вывод с помощью keep_tex: true: таблицы в латексном документе расположены в правильном порядке). По умолчанию print.xtable() выводит плавающие таблицы. Они расположены не точно там, где код, а где-то рядом. Вы можете поиграть с позиционированием стола, чтобы исправить это. Например (только соответствующий бит в вашем MWE):

---
header-includes:
- \usepackage{float}
---

```{r}
options(xtable.comment = FALSE,
        xtable.table.placement="H")
```
person scoa    schedule 15.12.2015
comment
Я делал это в течение последнего дня. Похоже, что с этим нужно разбираться в каждом конкретном случае, то есть с указанием местоположения для каждой из таблиц. Что-нибудь более общее будет высоко оценено - person Nishant Kachawa; 16.12.2015
comment
Если вы настроите xtable.table.placement="H" в options(), это будет применяться ко всем xtables. Если вы хотите установить его в каждом конкретном случае, print(xtable(x),table.placement="H") должен работать - person scoa; 16.12.2015
comment
Я перепробовал все возможные варианты размещения на глобальной основе. Ничто, кажется, не ставит таблицы в нужное место. Есть ли способ отключить плавающую среду и получить более детальный контроль над позиционированием? - person Nishant Kachawa; 17.12.2015
comment
options(xtable.floating=FALSE), кажется, отключает его вообще, но результаты гораздо более странные, чем с предложенным мной решением. - person scoa; 17.12.2015
comment
Да, я согласен. Похоже, это будет тупик с точки зрения использования xtable для такого количества таблиц. - person Nishant Kachawa; 23.12.2015