
Estoy intentando mostrar valores de un archivo csv dentro de una tabla. Para hacerlo, estoy usando la macro \csvreader
. Me gustaría que la tabla me gustara de esta manera:
con a toprule
, el encabezado de las columnas, a midrule
, los valores sin línea y a bottomrule
.
Aquí está el código que hice
\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}
Para cada línea, muestro la información de la fila csv, luego inserto un archivo \\
. Con este código obtengo el siguiente resultado
con una línea vacía adicional. Intenté eliminar el que \\
está delante de \bottomrule
, pero aparece el error Misclaced \noalign. \bottomrule->\noalign
.
¿Cómo podría eliminar esta línea adicional?
Respuesta1
Usar la opción late after line=\\
resuelve este problema:
\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}