He creado una tabla de ancho de columnas en TabularX y quiero colocarla en la parte superior de la página, pero no he encontrado una respuesta sobre cómo hacerlo. ¿Hay alguna manera?
\begin{center}
\footnotesize
\begin{tabularx} {\columnwidth} {
| >{\centering\arraybackslash}X
| >{\centering\arraybackslash}X
| >{\centering\arraybackslash}X
| >{\centering\arraybackslash}X |}
\hline
\makecell{Planet\\} & \makecell{Mass\\(M\textsubscript{s})} & \makecell{SMA\\(AU)} & \makecell{TA\\(\textdegree)} \\
\hline
b & 0.003 & 70 & 153 \\
\hline
c & 0.004 & 38.9 & 48 \\
\hline
d & 0.005 & 25.6 & 292 \\
\hline
e & 0.008 & 14.4 & 327 \\
\hline
\end{tabularx}
\captionof{table}{Parameters calculated using figs 2 and 3.}
\label{Table 1}
\end{center}
Respuesta1
Para forzar a LaTeX a componer el tabularx
material en la parte superior de una columna, coloque el material en un table
entorno, no en un center
entorno. Tenga en cuenta que, dado que el ancho del tabularx
entorno está establecido en , no se necesitan instrucciones \columnwidth
explícitas .\centering
También considere la sugerencia de @David Carlisle de alinear los números en las tres columnas de datos en sus marcadores decimales (explícitos o implícitos). Y trate de darle a la mesa un "aspecto" más abierto y atractivo deshaciéndose de todas las reglas verticales y usando menos reglas horizontales, pero bien espaciadas. Las aplicaciones de ambas sugerencias se muestran en la siguiente captura de pantalla.
\documentclass[twocolumn]{article}
\usepackage{tabularx,makecell,dcolumn,booktabs,lipsum}
\newcolumntype{C}{>{\centering\arraybackslash}X}
\newcolumntype{d}[1]{D..{#1}}
% handy shortcut macros:
\newcommand\mC[1]{\multicolumn{1}{C}{#1}} % without vertical rules
\newcommand\mD[1]{\multicolumn{1}{C|}{#1}} % with vertical rules
\begin{document}
\lipsum[1] % filler text
\begin{table}[t]
%\footnotesize % not needed
\begin{tabularx}{\columnwidth}{
| *{4}{C|} }
\hline
\makecell{Planet\\} &
\makecell{Mass\\(M\textsubscript{s})} &
\makecell{SMA\\(AU)} &
\makecell{TA\\(\textdegree)} \\
\hline
b & 0.003 & 70 & 153 \\
\hline
c & 0.004 & 38.9 & 48 \\
\hline
d & 0.005 & 25.6 & 292 \\
\hline
e & 0.008 & 14.4 & 327 \\
\hline
\end{tabularx}
\caption{OP's original version}
\label{table:parameters1}
\bigskip
\begin{tabularx}{\columnwidth}{
| >{\centering}X | d{1.3} | d{2.1} | d{3.0} |}
\hline
Planet &
\mD{\makecell{Mass\\(M\textsubscript{s})}} &
\mD{\makecell{SMA\\(AU)}} &
\mD{\makecell{TA\\(\textdegree)}} \\
\hline
b & 0.003 & 70 & 153 \\
\hline
c & 0.004 & 38.9 & 48 \\
\hline
d & 0.005 & 25.6 & 292 \\
\hline
e & 0.008 & 14.4 & 327 \\
\hline
\end{tabularx}
\caption{Numbers aligned on decimal markers}
\label{table:parameters2}
\bigskip
\begin{tabularx}{\columnwidth}{
@{} >{\centering}X d{1.3} d{2.1} d{3.0} @{}}
\toprule
Planet &
\mC{\makecell{Mass\\(M\textsubscript{s})}} &
\mC{\makecell{SMA\\(AU)}} &
\mC{\makecell{TA\\(\textdegree)}} \\
\midrule
b & 0.003 & 70 & 153 \\
c & 0.004 & 38.9 & 48 \\
d & 0.005 & 25.6 & 292 \\
e & 0.008 & 14.4 & 327 \\
\bottomrule
\end{tabularx}
\caption{Numbers aligned on decimal markers, no vertical rules, fewer but well-spaced horizontal rules}
\label{table:parameters3}
\end{table}
\lipsum[2-4] % more filler text
\end{document}