4

I’m using threeparttable for footnotes and tabularx to adjust column widths. My table contains notation definitions for an mVRP-D model, and its content is too long to fit on a single page. I need it to span multiple pages while preserving the footnotes and tabularx column formatting.

Below is my LaTeX code:

\begin{table}[!htbp] \begin{threeparttable} \centering \caption{mVRP-D Model Notation and Definitions} \label{tab:mvrpd-sign-meaning} \begin{tabularx}{\textwidth}{lX} \toprule[1pt] % Header line width: 1pt Notation & Definition \\ \midrule[0.75pt] % Middle line width: 0.75pt $G = (N, E)$ & Graph defining customer and warehouse nodes \\ $N = \{0, 1, 2, \dots, n, n + 1\}$ & Nodes of the graph, including customer nodes $i, j \in N_c = \{1, 2, \dots, n\}$ and warehouse nodes (one of which is a virtual warehouse) $\{0, n + 1\}$ \\ $N_c = N \setminus \{0, n + 1\}$ & Set of customer nodes $\{1, 2, \dots, n\}$ \\ $N_0 = N \setminus \{n + 1\}$ & Set of possible departure nodes for UAVs or trucks $\{0, 1, \dots, n\}$ \\ $N_+ = N \setminus \{0\}$ & Set of possible arrival nodes for UAVs or trucks $\{1, 2, \dots, n, n + 1\}$ \\ $E$ & Edges of the graph, representing possible delivery routes \\ $q_i$ & Demand of customer $i$ (package weight) \\ $K$ & Set of truck fleets, with the number of fleets denoted as $|K|$ and fleet index as $k$ \\ $f$ & Empty weight of the UAV \\ $m_k^K$ & Maximum load capacity limit of truck $k$ \\ $m_k^D$ & Maximum load capacity limit of the UAV on truck $k$ \\ $e_k^D$ & Maximum endurance of the UAV on truck $k$ (when empty) \\ $e_{ki}^D$ & Endurance of the UAV on truck $k$ when carrying customer $i$’s demand. If $q_i \leq m_k^D$, then $e_{ki}^D = e_k^D \frac{f}{f + q_i}$; otherwise, $e_{ki}^D = 0$\hyperlink{tab:mvrpd-item-1}{\tnote{a}} \\ $t_{ijk}^K$ & Travel time of truck $k$ from node $i$ to node $j$ \\ $t_{ijk}^D$ & Flight time of the UAV on truck $k$ from node $i$ to node $j$ \\ $\langle i, j , h\rangle$ & UAV’s delivery path: departs from node $i$, delivers to customer node $j$, and finally meets the truck at node $h$ \\ $F$ & Set of all possible UAV delivery paths. Specifically, the maximum endurance of the UAV when carrying customer $j$’s package must be no less than the total flight time from node $i$ to customer node $j$ and from customer node $j$ to the truck’s node $h$, i.e., $(i, j, h) \in F, i \in N_0, j \in \{N_c: j \neq i\}, h \in \{N_+: h \neq j, h \neq i, t_{ijk}^D + t_{jhk}^D \leq e_{kj}^D\}$ \\ $s^K$ & Unit transportation cost per unit time for a single truck \\ $s^D$ & Unit transportation cost per unit time for a single UAV \\ $s^W$ & Unit waiting cost per unit time for a single truck \\ $s^G$ & Fixed usage cost for a single truck fleet \\ $M$ & A sufficiently large positive number \\ $\alpha_{ijk}$ & Binary decision variable: 1 if truck $k$ travels from node $i \in N_0$ to node $j \in N_+$, otherwise 0 \\ $\beta_{ijhk}$ & Binary decision variable: 1 if the UAV on truck $k$ departs from node $i \in N_0$, serves customer node $j \in N_c$, and finally meets truck $k$ at node $h \in N_+$, otherwise 0 \\ $\mu_{ik}$ & Integer variable representing the order of node $i$ in the path of truck $k$ \\ $\gamma_{ijk}$ & Binary decision variable: 1 if truck $k$ serves node $i$ before node $j$, otherwise 0 \\ $\tau_{ik}^K$ & Non-negative continuous variable representing the arrival time of truck $k$ at node $i$ \\ $\tau_{ik}^D$ & Non-negative continuous variable representing the arrival time of the UAV on truck $k$ at node $i$ \\ $\rho_{ik}$ & Non-negative continuous variable representing the arrival time of truck fleet $k$ at node $i$ (i.e., the later arrival time between the truck and its UAV at node $i$) \\ $\epsilon_k$ & Binary variable: 1 if truck fleet $k$ is selected (i.e., participates in delivery), otherwise 0 \\ \bottomrule[1pt] % Footer line width: 1pt \end{tabularx} \begin{tablenotes} \footnotesize % Footnote font size \item[a] \hypertarget{tab:mvrpd-item-1}{} It is assumed in the paper that the maximum endurance of the UAV is inversely proportional to the sum of the UAV's empty weight and the weight of the carried customer packages. \end{tablenotes} \end{threeparttable} \end{table} 

Key requirements:

  • Keep the footnote
  • Retain tabularx (the X column is needed to wrap long definition texts)
  • Make the table span multiple pages without breaking formatting

Could anyone suggest a practical solution (e.g., combining with packages like longtable or ltxtable)? Thank you!

2
  • 4
    please make your code compilable. snippets aren't useful for testing. moreover, we cannot reproduce a problem concerning not-fitting-the-page unless you include code showing us your page layout etc. Commented Nov 8 at 4:22
  • 4
    use tabularray. Commented Nov 8 at 4:27

1 Answer 1

8

As suggested @cfr. With longtblr of tabularray package the code is concise and simple to write:

\documentclass{article} % or what you use \usepackage{geometry} % page layout of your document is unknown \usepackage{tabularray} \UseTblrLibrary{booktabs} \usepackage{hyperref} \begin{document} \begin{longtblr}[ caption = {mVRP-D Model Notation and Definitions}, label = {tab:mvrpd-sign-meaning}, note{a} = {\hypertarget{tab:mvrpd-item-1}{} It is assumed in the paper that the maximum endurance of the UAV is inversely proportional to the sum of the UAV's empty weight and the weight of the carried customer packages} ]{colsep = 4pt, colspec = {@{} Q[l, mode=math] X[l] @{} }, rowsep = 3pt, row{1} = {font=\bfseries, mode=text}, rowhead = 1 } \toprule[1pt] % Header line width: 1pt Notation & Definition \\ \midrule[0.75pt] % Middle line width: 0.75pt G = (N, E) & Graph defining customer and warehouse nodes \\ N = \{0, 1, 2, \dots, n, n + 1\} & Nodes of the graph, including customer nodes $i, j \in N_c = \{1, 2, \dots, n\}$ and warehouse nodes (one of which is a virtual warehouse) $\{0, n + 1\}$ \\ N_c = N \setminus \{0, n + 1\} & Set of customer nodes $\{1, 2, \dots, n\}$ \\ N_0 = N \setminus \{n + 1\} & Set of possible departure nodes for UAVs or trucks $\{0, 1, \dots, n\}$ \\ N_+ = N \setminus \{0\} & Set of possible arrival nodes for UAVs or trucks $\{1, 2, \dots, n, n + 1\}$ \\ E & Edges of the graph, representing possible delivery routes \\ q_i & Demand of customer i (package weight) \\ K & Set of truck fleets, with the number of fleets denoted as |K| and fleet index as k \\ f & Empty weight of the UAV \\ m_k^K & Maximum load capacity limit of truck k \\ m_k^D & Maximum load capacity limit of the UAV on truck k \\ e_k^D & Maximum endurance of the UAV on truck k (when empty) \\ e_{ki}^D & Endurance of the UAV on truck k when carrying customer i’s demand. If $q_i \leq m_k^D, then e_{ki}^D = e_k^D \frac{f}{f + q_i}$; otherwise $e_{ki}^D = 0$\hyperlink{tab:mvrpd-item-1}{\TblrNote{a}} \\ t_{ijk}^K & Travel time of truck k from node i to node j \\ t_{ijk}^D & Flight time of the UAV on truck k from node i to node j \\ \langle i, j , h\rangle & UAV’s delivery path: departs from node i, delivers to customer node j, and finally meets the truck at node h \\ F & Set of all possible UAV delivery paths. Specifically, the maximum endurance of the UAV when carrying customer j’s package must be no less than the total flight time from node i to customer node j and from customer node j to the truck’s node h, i.e., $(i, j, h) \in F, i \in N_0, j \in \{N_c: j \neq i\}, h \in \{N_+: h \neq j, h \neq i, t_{ijk}^D + t_{jhk}^D \leq e_{kj}^D\}$ \\ s^K & Unit transportation cost per unit time for a single truck \\ s^D & Unit transportation cost per unit time for a single UAV \\ s^W & Unit waiting cost per unit time for a single truck \\ s^G & Fixed usage cost for a single truck fleet \\ M & A sufficiently large positive number \\ \alpha_{ijk} & Binary decision variable: 1 if truck k travels from node $i \in N_0 to node j \in N_+$, otherwise 0 \\ \beta_{ijhk} & Binary decision variable: 1 if the UAV on truck k departs from node $i \in N_0$, serves customer node $j \in N_c$, and finally meets truck $k$ at node$ h \in N_+$, otherwise 0 \\ \mu_{ik} & Integer variable representing the order of node i in the path of truck k \\ \gamma_{ijk} & Binary decision variable: 1 if truck k serves node i before node j, otherwise 0 \\ \tau_{ik}^K & Non-negative continuous variable representing the arrival time of truck k at node i \\ \tau_{ik}^D & Non-negative continuous variable representing the arrival time of the UAV on truck k at node i \\ \rho_{ik} & Non-negative continuous variable representing the arrival time of truck fleet k at node i (i.e., the later arrival time between the truck and its UAV at node i) \\ \epsilon_k & Binary variable: 1 if truck fleet $k$ is selected (i.e., participates in delivery), otherwise 0 \\ \bottomrule[1pt] % Footer line width: 1pt \end{longtblr} \end{document} 

enter image description here

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.