将表格线分成两行,而不是调整表格大小

将表格线分成两行,而不是调整表格大小

我创建了下表,其中包含长 DNA 序列,以一长串字符表示,其名称位于左列。现在的格式是,所有序列都打印在一行中,结果整个表格缩小到一行可以容纳一页。我希望长序列分成两行,而不是缩小表格。

因此我想实现以下目标:

  • 我的文档中所有表格的字体大小应该相同(宽表格不会缩小)
  • 如果长序列无法放在一行上,则会被拆分,拆分序列的顶行与左列中的名称对齐

非常感谢!

\usepackage{graphicx}

\usepackage{booktabs}
\newcommand{\ra}[1]{\renewcommand{\arraystretch}{#1}}

\begin{document}

\begin{table}[hbpt]
    \ra{1.3}
    \centering
    \resizebox{\linewidth}{!}{%
        \begin{tabular}{@{}l|l@{}}
            \toprule[2pt]
            Name & Sequence (5'-3')\\
            \hline
            oligo-dT primer & [5Bio]ACGTACGTACGTACGTACGTACGTCACGACGCTCTTCCGATCT[6-bp cell barcode][10-bp UMI]T\textsubscript{30}VN\\
            TSO & ACGTACGTCACGTACGTACGTACGTCGACGCrGrG+G \\
            XX primer & [5Bio]ACACTCTTTCCCTACACGACGC \\
            XY primer & AACTACTAGGCGACCACCTAGGCGCTACTAGGCGTTCCCTTAGGCGACGCTCTTCCG*A*T*C*T \\
            Index primer & CAAGCAGAAGACGGCATACGAGAT[8-bp index]ACTACGATCATACGTACGTACGT \\
            \bottomrule[2pt]
    \end{tabular}}
    \caption{.....}
\end{table}

答案1

您可以使用它seqsplit来拆分序列并tabularx自动调整列的大小。

这里我使用了\small,但你可以省略它。

\documentclass{article}
\usepackage{booktabs,tabularx,seqsplit}

\begin{document}

\begin{table}[hbpt]
\small

\begin{tabularx}{\textwidth}{@{}l>{\raggedright\arraybackslash}X@{}}
\toprule
Name & Sequence (5'-3')\\
\midrule
oligo-dT primer & [5Bio]\seqsplit{ACGTACGTACGTACGTACGTACGTCACGACGCTCTTCCGATCT}%
                  [6-bp cell barcode][10-bp UMI]T\textsubscript{30}VN\\
\addlinespace
TSO             & \seqsplit{ACGTACGTCACGTACGTACGTACGTCGACG}CrGrG+G \\
\addlinespace
XX primer       & [5Bio]\seqsplit{ACACTCTTTCCCTACACGACGC} \\
\addlinespace
XY primer       & \seqsplit{AACTACTAGGCGACCACCTAGGCGCTACTAGGCGTTCCCTTAGGCGACGCTCTTCCG}*A*T*C*T \\
\addlinespace
Index primer    & \seqsplit{CAAGCAGAAGACGGCATACGAGAT}[8-bp index]%
                  \seqsplit{ACTACGATCATACGTACGTACGT} \\
\bottomrule
\end{tabularx}

\caption{.....}

\end{table}

\end{document}

在此处输入图片描述

答案2

您可以手动添加空格以使其能够换行。

\documentclass{article}

\usepackage{booktabs}
\usepackage{tabularx}
\newcommand{\ra}[1]{\renewcommand{\arraystretch}{#1}}

\begin{document}

\begin{table}[hbpt]
    \ra{1.3}
    \centering
    \begin{tabularx}{\linewidth}{@{}l|X@{}}
            \toprule[2pt]
            Name & Sequence (5'-3')\\
            \hline
            oligo-dT primer & [5Bio]ACGTACGTACGTACGTACGTACGTCACGACGCT CTTCCGATCT[6-bp cell barcode][10-bp UMI]T\textsubscript{30}VN\\
            TSO & ACGTACGTCACGTACGTACGTACGTCGACGCrGrG+G \\
            XX primer & [5Bio]ACACTCTTTCCCTACACGACGC \\
            XY primer & AACTACTAGGCGACCACCTAGGCGCTACTAGGCGTT CCCTTAGGCGACGCTCTTCCG*A*T*C*T \\
            Index primer & CAAGCAGAAGACGGCATACGAGAT[8-bp index]ACTAC GATCATACGTACGTACGT \\
            \bottomrule[2pt]
    \end{tabularx}
    \caption{.....}
\end{table}
\end{document}

在此处输入图片描述

相关内容