latextabular

LaTeX, How to fit a large table in a page


The following LaTeX code generate a table but it is contain small font size and it does not fit page:

\documentclass{article}
\usepackage{tabularx} % in the preamble
\usepackage{graphicx}

\begin{document}

        \begin{table}[]
    \centering
    \caption{My caption}
    \label{my-label}
    \resizebox{\textwidth}{!}{%
    \begin{tabular}{lllll}
    Detection Methods & Supervised /Semi-supervised/ Unsupervised & Technique Used                                                                    & Applications                                            & Technology                                                           \\
    Statistical       &                                           & Gaussian-based detection                                                          & Online anomaly detection                                & Conventional   data centres                                          \\
    Statistical       &                                           & Gaussian-based detection                                                          & General                                                 & General                                                              \\
    Statistical       &                                           & Regression analysis                                                               & Globally-distributed commercial applications            & Distributed, Web-based, Application \& System metrics                \\
    Statistical       &                                           & Regression analysis                                                               & Web applications                                        & Enterprise web applications and conventional data centre             \\
    Statistical       &                                           & Correlation                                                                       & Complex enterprise online applications                  & Distributed System                                                   \\
    Statistical       &                                           & Correlation                                                                       & Orleans system and distributed cloud computing services & Virtualized, cloud computing and distributed system (Orleans system) \\
    Statistical       &                                           & Correlation                                                                       & Hadoop, Olio and RUBiS                                  & Virtualized cloud computing and distributed systems.                 \\
    ĘMachine learning & Supervised                                & Bayesian classification                                                           & Online application                                      & IBM system S-distributed stream processing cluster                   \\
    Machine learning  & Unsupervised                              & Neighbour-based technique (Local Outlier Factor algorithm)                        & General                                                 & Cloud Computing system                                               \\
    Machine learning  & Semi-supervised                           & Principle component analysis and  Semi-supervised Decision-tree\_                 & Institute-wide cloud computing environment              & Cloud Computing                                                      \\
    Statistical       &                                           & Regression curve fitting the service time-adapted cumulative distributed function & Online application service                              & Platform and configuration agnostic                                  \\
                      &                                           &                                                                                   &                                                         &                                                                     
    \end{tabular}%
    }
    \end{table}

\end{document}

I would like to fit this LaTeX table in one page. I appreciate your help


Solution

  • As suggested by Martin Scharrer in a comment to this answer on TeX.SX, one better alternative to the command \resizebox is to use the adjustbox package. Compile the following and then compare with the same code where \begin{adjustbox}{width=\textwidth} and \end{adjustbox} are commented.

    Please post a comment if you need further explainations!

    \documentclass{article}
    \usepackage{tabularx}
    \usepackage{graphicx}
    \usepackage{adjustbox}
    
    \begin{document}
    
    \begin{table}[]
      \centering
      \caption{My caption}
      \label{my-label}
    
      \begin{adjustbox}{width=\textwidth}
    
        \begin{tabular}{lllll}
    Detection Methods & Supervised /Semi-supervised/ Unsupervised & Technique Used & Applications & Technology \\
    Statistical & & Gaussian-based detection & Online anomaly detection & Conventional data centres \\
    Statistical & & Gaussian-based detection & General & General \\
    Statistical & & Regression analysis & Globally-distributed commercial applications & Distributed, Web-based, Application \& System metrics \\
    Statistical & & Regression analysis & Web applications & Enterprise web applications and conventional data centre \\
    Statistical & & Correlation & Complex enterprise online applications & Distributed System \\
    Statistical & & Correlation & Orleans system and distributed cloud computing services & Virtualized, cloud computing and distributed system (Orleans system) \\
    Statistical & & Correlation & Hadoop, Olio and RUBiS & Virtualized cloud computing and distributed systems. \\
    ĘMachine learning & Supervised & Bayesian classification & Online application & IBM system S-distributed stream processing cluster \\
    Machine learning & Unsupervised & Neighbour-based technique (Local Outlier Factor algorithm) & General & Cloud Computing system \\
    Machine learning & Semi-supervised & Principle component analysis and Semi-supervised Decision-tree\_ & Institute-wide cloud computing environment & Cloud Computing \\
    Statistical & & Regression curve fitting the service time-adapted cumulative distributed function & Online application service & Platform and configuration agnostic \\
    & & & & 
        \end{tabular}
    
      \end{adjustbox}
    
    \end{table}
    
    \end{document}
    

    A different approach if the (too small) font size in the table is the main matter; you may want to rearrange the text in a single cell on more lines within the cell:

    \documentclass{article}
    
    \begin{document}
    
    \begin{table}[htp]
      \centering
      \caption{My caption}
      \label{my-label}
    {\small %
        \begin{tabular}{p{.18\textwidth}p{.22\textwidth}p{.2\textwidth}p{.2\textwidth}p{.2\textwidth}}
    Detection\par Methods & Supervised/\par Semi-supervised/\par Unsupervised & Technique Used & Applications & Technology \\
    Statistical & & Gaussian-based detection & Online anomaly detection & Conventional data centres \\
    Statistical & & Gaussian-based detection & General & General \\
    Statistical & & Regression\par analysis & Globally-distributed commercial applications & Distributed, Web-based, Application \&\par System metrics \\
    Statistical & & Regression\par analysis & Web applications & Enterprise web applications and conventional data centre \\
    Statistical & & Correlation & Complex\par enterprise online applications & Distributed\par System \\
    Statistical & & Correlation & Orleans system and distributed cloud computing services & Virtualized, cloud computing and distributed system (Orleans system) \\
    Statistical & & Correlation & Hadoop,\par Olio and RUBiS & Virtualized cloud computing and distributed systems. \\
    ĘMachine\par learning & Supervised & Bayesian\par classification & Online\par application & IBM system S-distributed stream\par processing\par cluster \\
    Machine\par learning & Unsupervised & Neighbour-based technique (Local Outlier Factor algorithm) & General & Cloud\par Computing\par system \\
    Machine\par learning & Semi-supervised & Principle component analysis and Semi-supervised Decision-tree\_ & Institute-wide cloud computing environment & Cloud\par Computing \\
    Statistical & & Regression curve fitting the service time-adapted cumulative distributed function & Online\par application service & Platform and configuration agnostic \\
    & & & & 
        \end{tabular}%
    }%
    \end{table}
    
    \end{document}
    

    Here I used {\small ... } and \par, somewhere, to locally avoid word breaking. You should set font size first, as you prefer it, then the width of the five columns, finally locally adjust where necessary.