Я хочу вставить фрейм данных в латексный отчет, используя метод pandas dataframe.to_latex()
.
Полученная таблица слишком широка и не помещается на одной странице. Я заметил, что у панд есть опция longtable=True
. Переключение на True и добавление longtable в латексную преамбулу по-прежнему приводит к тому, что таблица слишком широка для страницы.
Вот рабочий пример:
Dataframe
data_dic = {'Sample1': {'Users': '4431761.3',
'Opened app': '25.5%',
'used once': '5.7%',
'Android': '8.3%',
'iOs': '4.6%',
'Premium access',
'Purchased': '0.34%',
'Weeks': '12'},
'Sample2': {'Users': '168,111.1',
'Opened app': '5.4%',
'used once': '2.2%',
'Android': '69.4%',
'iOs': '30.6%',
'Premium access': '10.1%',
'Purchased': '10.73%',
'Weeks': '4'}}
df = pd.DataFrame.from_dict(data_dic, orient='index')
df.to_latex('sample_table.tex', longtable=True, bold_rows=True)
Минимальный рабочий пример в LaTex
\documentclass[a4paper, 12pt]{article}
\usepackage{booktabs, longtable}
\begin{document}
\section*{Table too wide}
Table below
\bigskip
\input{sample_table.tex}
\bigskip
\end{document}
В идеале, я бы просто хотел, чтобы стол показывался разбитым и сложенным. Обтекание текста может также работать, поскольку оно может почти вписаться. Решение не должно использовать опцию longtable
, но мне интересно знать, для чего эта опция, если не для этой конкретной ситуации.
Спасибо!