我使用了下面的代码,但似乎对我的 Latex 表不起作用。我想可能是因为我使用了 iopart 文档类。它给了我以下错误。
<inserted text>
$
l.456 ...ngth L ($\mu$ m) & Density of PDMS (Kg/m^
3) \nonumber\\
I've inserted a begin-math/end-math symbol since I think
you left one out. Proceed, with fingers crossed.
! Missing $ inserted.
<inserted text>
$
l.457 \mr
\begin{table}
\caption{\label{TableOfValues}Dimensions of example to be solved}
\begin{indented}
\item[]\begin{tabular}{p{0.15in}p{0.3in}p{0.3in}p{0.6in}p{0.2in}p{0.25in}p{0.3in}}
\br
Sr. no & Breadth b ($\mu$ m) & Height h ($\mu$ m) & Young's Modulus E of PDMS (GPa) & Gap g ($\mu$ m) & Length L ($\mu$ m) & Density of PDMS (Kg/m^3) \nonumber\\
\mr
1&300&10&0.750&5&800&970\\
2&300&8&0.750&5&800&970\\
3&300&9&0.750&5&800&970\\
4&300&11&0.750&5&800&970\\
5&300&12&0.750&5&800&970\\
6&300&10&0.750&5&600&970\\
7&300&10&0.750&5&700&970\\
8&300&10&0.750&5&900&970\\
9&300&10&0.750&5&1000&970\\
10&300&10&0.750&3&800&970\\
11&300&10&0.750&4&800&970\\
12&300&10&0.750&6&800&970\\
13&300&10&0.750&7&800&970\\
\br
\end{tabular}
\end{indented}
\end{table}
答案1
- 请始终提供 MWE(最小工作示例,一个完整的小文档,可以按原样编译并演示您的问题。
- 由于您的文档的序言未知,因此表中的某些命令未定义。
- 对于变量单位来说,使用
siunitx
包是非常明智的。使用它,你的问题就被避免了。 - 列标题很长,因此表格可能会超出右文本边框。一种解决方案是使用
makcell
命令(在同名包中定义)将列标题分成两行,并使用缩写来缩短非常长的文本,并在表格底部添加解释:
\documentclass{article}
\usepackage{booktabs, makecell}
\usepackage{siunitx} % package for dummy text
\begin{document}
\begin{table}
\sisetup{per-mode=symbol}
\caption{Dimensions of example to be solved}
\label{TableOfValues}
\begin{tabular}{@{}S[table-format=2.0]
S[table-format=3.0]
S[table-format=2.0]
S[table-format=1.3]
S[table-format=1.0]
S[table-format=4.0]
S[table-format=3.0]
@{}}
\toprule
{\makecell{Sr.\\ no}}
& {\makecell{Breadth\\ b (\si{\micro\metre})}}
& {\makecell{Height\\ h (\si{\micro\metre})}}
& {\makecell{Modulus*\\ E (GPa)}}
& {\makecell{Gap\\g (\si{\micro\metre})}}
& {\makecell{Length\\ L (\si{\micro\metre})}}
& {\makecell{Density of\\ PDMS (\si{\kilogram\per\cubic\metre})}} \\
\midrule
1 &300 &10 &0.750 &5 &800 &970 \\
2 &300 &8 &0.750 &5 &800 &970 \\
3 &300 &9 &0.750 &5 &800 &970 \\
4 &300 &11 &0.750 &5 &800 &970 \\
5 &300 &12 &0.750 &5 &800 &970 \\
6 &300 &10 &0.750 &5 &600 &970 \\
7 &300 &10 &0.750 &5 &700 &970 \\
8 &300 &10 &0.750 &5 &900 &970 \\
9 &300 &10 &0.750 &5 &1000 &970 \\
10 &300 &10 &0.750 &3 &800 &970 \\
11 &300 &10 &0.750 &4 &800 &970 \\
12 &300 &10 &0.750 &6 &800 &970 \\
13 &300 &10 &0.750 &7 &800 &970 \\
\bottomrule
\multicolumn{7}{l}{\small
*: Young's Modulus E of PDMS (GPa)}
\end{tabular}
\end{table}
\end{document}
答案2
一些建议和意见:
加载
siunitx
包并使用其\si
宏来排版科学单位。例如,\si{\micro\meter}
和\si{\kilo\gram\per\meter\cubed}
。siunitx
仍然使用该包的功能,使用其S
列类型将所有 7 列中的数字与其(显式或隐式)小数标记对齐。使用
tabularx
环境并使用其X
列类型来排版标题单元格,同时允许自动换行。在下面的示例中,我使用了可变宽度和居中版本的列类型X
。请注意,可变宽度的总和为7
,即类型的列数X
。(附言:相对宽度部分是通过反复试验获得的;目标是使所有标题单元格的内容仅适合两行。)
\documentclass{article}
\usepackage{tabularx,siunitx,booktabs}
\newcolumntype{T}[1]{S[table-format=#1]}
\newcolumntype{C}[1]{>{\centering\arraybackslash%
\hsize=#1\hsize\linewidth=\hsize}X}
\sisetup{per-mode=symbol}
\newcommand\mc[2]{\multicolumn{1}{#1}{#2}} % handy shortcut macro
\begin{document}
\begin{table}
\caption{Dimensions of example to be solved} \label{TableOfValues}
\setlength\tabcolsep{4pt}
\begin{tabularx}{\textwidth}{@{}
T{2.0}T{3.0}T{2.0}T{1.3}T{1.0}T{4.0}T{3.0}
@{}}
\toprule
\mc{@{}C{0.3}}{Sr.\ no}
& \mc{C{0.75}}{Breadth $b$ (\si{\micro\meter})}
& \mc{C{0.75}}{Height $h$ (\si{\micro\meter})}
& \mc{C{2.1}}{Young's Modulus $E$ of PDMS (\si{\giga\pascal})}
& \mc{C{0.65}}{Gap $g$~(\si{\micro\meter})}
& \mc{C{0.75}}{Length $L$ (\si{\micro\meter})}
& \mc{C{1.7}@{}}{Density of PDMS (\si{\kilo\gram\per\meter\cubed})} \\
\midrule
1 & 300 & 10 & 0.750 & 5 & 800 & 970\\
2 & 300 & 8 & 0.750 & 5 & 800 & 970\\
3 & 300 & 9 & 0.750 & 5 & 800 & 970\\
4 & 300 & 11 & 0.750 & 5 & 800 & 970\\
5 & 300 & 12 & 0.750 & 5 & 800 & 970\\
6 & 300 & 10 & 0.750 & 5 & 600 & 970\\
7 & 300 & 10 & 0.750 & 5 & 700 & 970\\
8 & 300 & 10 & 0.750 & 5 & 900 & 970\\
9 & 300 & 10 & 0.750 & 5 &1000 & 970\\
10 & 300 & 10 & 0.750 & 3 & 800 & 970\\
11 & 300 & 10 & 0.750 & 4 & 800 & 970\\
12 & 300 & 10 & 0.750 & 6 & 800 & 970\\
13 & 300 & 10 & 0.750 & 7 & 800 & 970\\
\bottomrule
\end{tabularx}
\end{table}
\end{document}