简体   繁体   中英

Set LaTeX table width to \columnwidth

I'm pretty new to LaTeX and I'm writing a report using the IEEEtran format, so my page is divided into two columns. I want to insert a table inline and I want the items in their columns to be centered. There are a few similar posts and I have looked at documentation for tabular* and tabularx , but I could not make anything work. I have achieved the best result with the following.

\documentclass[journal]{IEEEtran}

\usepackage{mdwtab}
\usepackage{multirow}

\begin{document}

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse nec tincidunt justo. Fusce imperdiet tincidunt mauris, a hendrerit justo ultrices sodales. In at mi sit amet leo aliquam dignissim. Mauris fringilla fermentum egestas. Nulla facilisi. Nulla rutrum suscipit lectus vehicula consequat. Praesent eu sem vulputate, tristique augue et, cursus risus. Fusce sodales purus turpis, placerat interdum libero consequat at. Vestibulum convallis tincidunt lobortis. In ornare velit erat.

\begin{center}
\begin{tabular*}{\columnwidth}{cccc}
\hline
    \multirow{2}{*}{Frequency (Hz)} & \multicolumn{2}{c}{Manual Measurements} & Bode Analyzer\\
    \cline{2-3}
    \cline{4}
    & Linear Gain (V/V) & Logarithmic Gain (dB) & Logarithmic Gain (dB)\\
    \hline
    1000 & 0.04395 & -33.179 & -35\\
    2000 & 0.02274 & -38.902 & -42\\
    3000 & 0.01553 & -42.215 & -45\\
    4000 & 0.01185 & -44.564 & -47\\
    5000 & 0.00474 & -46.484 & -50\\
    \hline
\end{tabular*}
\end{center}

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse nec tincidunt justo. Fusce imperdiet tincidunt mauris, a hendrerit justo ultrices sodales. In at mi sit amet leo aliquam dignissim. Mauris fringilla fermentum egestas. Nulla facilisi. Nulla rutrum suscipit lectus vehicula consequat. Praesent eu sem vulputate, tristique augue et, cursus risus. Fusce sodales purus turpis, placerat interdum libero consequat at. Vestibulum convallis tincidunt lobortis. In ornare velit erat.

\end{document}

这是桌子的样子

I have tried using p{measure} instead of c to define the columns, but I can't get the text centered.

I have tried using tabularx, but I don't want all the columns to be the same width, and I don't want to fiddle with determining the relative widths of the columns.

I feel like I'm missing something, thanks in advance.

Edit: Original code snippet was not a compilable piece of code. Apologies.

Edit: I don't know if it was clear enough, but I absolutely do not mind if text spans multiple rows.

One possible approach with the tabularray package:

\documentclass[journal]{IEEEtran}

\usepackage{mdwtab}
\usepackage{multirow}
\usepackage{tabularray}

\begin{document}

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse nec tincidunt justo. Fusce imperdiet tincidunt mauris, a hendrerit justo ultrices sodales. In at mi sit amet leo aliquam dignissim. Mauris fringilla fermentum egestas. Nulla facilisi. Nulla rutrum suscipit lectus vehicula consequat. Praesent eu sem vulputate, tristique augue et, cursus risus. Fusce sodales purus turpis, placerat interdum libero consequat at. Vestibulum convallis tincidunt lobortis. In ornare velit erat.

\begin{center}
\begin{tblr}{columns={halign=c},rows={valign=m}, row{3-7}={mode=math},colspec={@{}XXXX@{}}}
    \hline
    \SetCell[r=2]{} Frequency (Hz) & \SetCell[c=2]{} Manual Measurements & & Bode Analyzer\\
    \hline
    & Linear Gain (V/V) & Logarithmic Gain (dB) & Logarithmic Gain (dB)\\
    \hline
    1000 & 0.04395 & -33.179 & -35\\
    2000 & 0.02274 & -38.902 & -42\\
    3000 & 0.01553 & -42.215 & -45\\
    4000 & 0.01185 & -44.564 & -47\\
    5000 & 0.00474 & -46.484 & -50\\
    \hline
\end{tblr}
\end{center}

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse nec tincidunt justo. Fusce imperdiet tincidunt mauris, a hendrerit justo ultrices sodales. In at mi sit amet leo aliquam dignissim. Mauris fringilla fermentum egestas. Nulla facilisi. Nulla rutrum suscipit lectus vehicula consequat. Praesent eu sem vulputate, tristique augue et, cursus risus. Fusce sodales purus turpis, placerat interdum libero consequat at. Vestibulum convallis tincidunt lobortis. In ornare velit erat.

\end{document}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM