我希望 метод Ньютона 和 метод секущих 下的所有 3 列具有相同的宽度。目前,第三列比第一列和第二列宽
这很有趣,因为该表是使用 excel 表生成的https://www.tablesgenerator.com/
\begin{table}[H]
\centering
\begin{tabular}{|c|c|c|cccccc|}
\hline
\multirow{3}{*}{WQEQWEQQW} & \multirow{3}{*}{$k$} & \multirow{3}{*}{$m$} & \multicolumn{6}{c|}{число итерации} \\ \cline{4-9}
& & & \multicolumn{3}{c|}{метод Ньютона} & \multicolumn{3}{c|}{метод секущих} \\ \cline{4-9}
& & & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{2} & \multicolumn{1}{c|}{3} & \multicolumn{1}{c|}{1} & \multicolumn{1}{c|}{2} & 3 \\ \hline
\multirow{5}{*}{$x^3-x^2-kx+m=0$} & 2 & 1 & \multicolumn{1}{c|}{5} & \multicolumn{1}{c|}{3} & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{2} & \multicolumn{1}{c|}{2} & 2 \\ \cline{2-9}
& 2 & 1.2 & \multicolumn{1}{c|}{5} & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{2} & \multicolumn{1}{c|}{2} & 2 \\ \cline{2-9}
& 3 & 1.2 & \multicolumn{1}{c|}{5} & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{2} & \multicolumn{1}{c|}{2} & 2 \\ \cline{2-9}
& 4 & 1 & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{5} & \multicolumn{1}{c|}{2} & \multicolumn{1}{c|}{2} & 2 \\ \cline{2-9}
& 4 & 1.3 & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{4} & \multicolumn{1}{c|}{5} & \multicolumn{1}{c|}{2} & \multicolumn{1}{c|}{2} & 2 \\ \hline
\end{tabular}
\caption{}
\label{tab:my-table}
\end{table}
答案1
遗憾的是,经常发生的情况是,https://www.tablesgenerator.com/几乎无法手动维护。我建议你先摆脱所有 30 [!] 个毫无意义的\multicolumn{1}{c|}{...}
“包装器”实例。
回答您的主要问题:如果 3 列标题的宽度超过了 3 个底层列的自然宽度之和,则 LaTeX 别无选择,只能加宽至少一列以使标题适合。为了解决这个问题,我建议明确计算所需的列宽,按照以下代码所示。
我还想建议您删除所有垂直线,使用更少但间距适当的水平线。以下屏幕截图中的第二个表格说明了这样做的方法之一。
\documentclass{article}
\usepackage{fontspec} % requires XeLaTeX or LuaLaTeX
\setmainfont{EB Garamond}[Numbers=Lining] % or some other suitable font
\usepackage{array} % for 'w' column type
\usepackage{calc}
\usepackage{booktabs} % for \toprule, \midrule, \bottomrule, \cmidrule macros
\newlength\mylenA
\newlength\mylenB
\begin{document}
\begin{table}
\centering
\setlength\extrarowheight{2pt} % for a less-cramped "look"
\settowidth\mylenA{метод Ньютона} % choose the wider of the two sub-headers
%% calculate usable width of underlying columns:
\setlength\mylenB{(\mylenA-4\tabcolsep-2\arrayrulewidth)/3}
\begin{tabular}{| c | c | c | *{6}{w{c}{\mylenB}|} }
\hline
& & & \multicolumn{6}{c|}{число итерации} \\ \cline{4-9}
WQEQWEQQW & $k$ & $m$ &
\multicolumn{3}{c|}{метод Ньютона} &
\multicolumn{3}{c|}{метод секущих} \\ \cline{4-9}
& & & 1 & 2 & 3 & 1 & 2 & 3 \\ \hline
& 2 & 1 & 5 & 3 & 4 & 2 & 2 & 2 \\ \cline{2-9}
& 2 & 1.2 & 5 & 4 & 4 & 2 & 2 & 2 \\ \cline{2-9}
$x^3-x^2-kx+m=0$
& 3 & 1.2 & 5 & 4 & 4 & 2 & 2 & 2 \\ \cline{2-9}
& 4 & 1 & 4 & 4 & 5 & 2 & 2 & 2 \\ \cline{2-9}
& 4 & 1.3 & 4 & 4 & 5 & 2 & 2 & 2 \\
\hline
\end{tabular}
\caption{A table with lots and lots of vertical bars}
\label{tab:my-tableA}
\vspace{1cm}
\setlength\extrarowheight{0pt} % back to default
%% re-calculate usable width of underlying columns:
\setlength\mylenB{(\mylenA-4\tabcolsep)/3}
\begin{tabular}{@{} ccc *{6}{w{c}{\mylenB}} @{}}
\toprule
WQEQWEQQW & $k$ & $m$ & \multicolumn{6}{c@{}}{число итерации} \\
\cmidrule(l){4-9}
& & &
\multicolumn{3}{c}{метод Ньютона} &
\multicolumn{3}{c@{}}{метод секущих} \\
\cmidrule(lr){4-6} \cmidrule(l){7-9}
& & & 1 & 2 & 3 & 1 & 2 & 3 \\ \midrule
& 2 & 1 & 5 & 3 & 4 & 2 & 2 & 2 \\
& 2 & 1.2 & 5 & 4 & 4 & 2 & 2 & 2 \\
$x^3-x^2-kx+m=0$ &
3 & 1.2 & 5 & 4 & 4 & 2 & 2 & 2 \\
& 4 & 1 & 4 & 4 & 5 & 2 & 2 & 2 \\
& 4 & 1.3 & 4 & 4 & 5 & 2 & 2 & 2 \\
\bottomrule
\end{tabular}
\caption{Same table, but without any vertical bars}
\label{tab:my-tableB}
\end{table}
\end{document}