
Я пытаюсь отобразить значения из CSV-файла внутри таблицы. Для этого я использую макрос \csvreader
. Я хотел бы, чтобы таблица выглядела так :
с a toprule
, заголовком столбцов, a midrule
, значениями без линии и a bottomrule
.
Вот код, который я сделал
\begin{tabular}{*{4}{c}}%
\toprule
\textbf{Mesh} & $h$ & \textbf{nDof $\P_1$} & \textbf{nDof $\P_2$}\\
\midrule
\csvreader[head to column names]{fig/meshInformation3D.csv}{}
{\texttt{\mesh} & \pgfmathprintnumber{\hAvg} & \pgfmathprintnumber{\nDofPUn} & \pgfmathprintnumber{\nDofPDeux}\\}
\\\bottomrule
\end{tabular}
Для каждой строки я отображаю информацию из строки csv, затем вставляю \\
. С этим кодом я получаю следующий результат
с дополнительной пустой строкой. Я пробовал удалить \\
перед \bottomrule
, но это привело к ошибке Misclaced \noalign. \bottomrule->\noalign
.
Как мне удалить эту лишнюю строку?
решение1
Использование опции late after line=\\
решает эту проблему:
\documentclass{article}
\usepackage{pgf}
\usepackage{amssymb}
\usepackage{csvsimple}
\usepackage{booktabs}
\begin{filecontents}[noheader]{mylist.csv}
mesh, hAvg, nDofPUn, nDofPDeux
M0 , 0.86, 47384 , 327000
M1 , 0.74, 68993 , 473000
\end{filecontents}
\begin{document}
\begin{tabular}{*{4}{c}}%
\toprule
\textbf{Mesh} & $h$ & \textbf{nDof $\mathbb{P}_1$} & \textbf{nDof $\mathbb{P}_2$} \\
\midrule
\csvreader[head to column names, late after line=\\]{mylist.csv}{}{
\texttt{\mesh} &
\pgfmathprintnumber{\hAvg} &
\pgfmathprintnumber{\nDofPUn} &
\pgfmathprintnumber{\nDofPDeux}
}
\bottomrule
\end{tabular}
\end{document}