如何在表格单元格中不留空格地拆分长字符?

如何在表格单元格中不留空格地拆分长字符?

我已经创建了表格来呈现我的输出,其中样本的名称相当长,所以我需要拆分,因为如果不拆分,sharelatex就不会打印出整个表格。但是,我曾经\\打破字符串,但它会产生空格,输出 latex 表格对我来说不是想要的。有人能告诉我如何优化吗?有什么更好的主意吗?

以下是我使用的代码:

\begin{table}[h!]
  \centering
  \caption{output list}
  \label{tab:table1.1}
  \begin{tabular}{ccccc}
    \toprule
    Sample name & R\textsuperscript{sc} & R\textsuperscript{sd} & R\textsuperscript{wc} & R\textsuperscript{wd}\\
    \midrule
    wgEncodeOpenChromChip\\K562CmycAlnRep2 & {Myc1\_2} & 8763362 & 32850 & 311409\\
    wgEncodeOpenChromChip\\K562CmycAlnRep3 & {Myc1\_3} & 9649688 & 13623 & 104911\\
    \bottomrule
  \end{tabular}
\end{table}

以下是上述代码的输出: 在此处输入图片描述

但上述代码的输出结果不是我想要的,我想将长字符拆分为换行符,但不包含空格。我该怎么做?还有更好的主意吗?非常感谢

编辑:如果我没有拆分长字符串,sharelatex就不会打印出表中的其余列。如果我拆分字符串,则会引入空格。有没有更好的解决方案来优化代码?我在latex社区中还很新。希望我的帖子清楚易懂。

答案1

也许是这样的?

在此处输入图片描述

如果您更喜欢顶部对齐而不是垂直居中,请使用p而不是m作为第一列的列类型。

\documentclass{article}
\usepackage{booktabs}
\usepackage{array}     % for 'm' column type
\newlength\mylen
\settowidth\mylen{wgEncodeOpenChromChip} % determine width of 1st col.
\begin{document}
\begin{table}
\centering
  \caption{output list}
  \label{tab:table1.1}
\begin{tabular}{@{}m{\mylen}cccc@{}}
    \toprule
    Sample name & R\textsuperscript{sc} & R\textsuperscript{sd} 
                & R\textsuperscript{wc} & R\textsuperscript{wd}\\
    \midrule
    wgEncodeOpenChromChip K562CmycAlnRep2 & {Myc1\_2} & 8763362 & 32850 & 311409\\
    wgEncodeOpenChromChip K562CmycAlnRep3 & {Myc1\_3} & 9649688 & 13623 & 104911\\
    \bottomrule
\end{tabular}
\end{table}
\end{document}

相关内容