2

I have a presentation where I have section and subsection headings that are displayed at the beginning of each section/subsection. I am trying to get these to be in two columns. I have managed to get the original TOC in two-column format, but the subsequent displays of TOC at section/subsection headings do not come out in two-column. I would appreciate some help

Another issue that I am noticing is that the two-columns on the first TOC are not aligned -- the second column is higher than the first. Cant' figure out why.

Here is a MWE:

\documentclass[table,xcolor=pdftex,dvipsnames]{beamer}
\usetheme{Madrid}
\usecolortheme{whale}
\beamertemplatenavigationsymbolsempty

\usepackage{multicol}

\AtBeginSection[]
{
\begin{frame}<beamer>
\frametitle{Outline}
\tableofcontents[
  currentsection
]
\end{frame}
}

\AtBeginSubsection[]
{
\begin{frame}<beamer>
\frametitle{Outline}
\tableofcontents[
  currentsection,currentsubsection
]
\end{frame}
}

\begin{document}

\section*{Outline}
         \begin{frame}
             \frametitle{Outline}
     \begin{multicols}{2}
           \tableofcontents
     \end{multicols}
       \end{frame}

\section{Introduction -- Graph Types}

\section{Property Graph Processing}
    \subsection{Classification}
    \subsection{Online querying}
    \subsection{Offline analytics}

\section{Graph Analytics Approaches}
    \subsection{MapReduce \& Variants}
    \subsection{Classification of Native Approaches}

\section{Graph Analytics Systems}
    \subsection{Vertex-Centric BSP}
    \subsection{Vertex-Centric Asynchronous}
    \subsection{Vertex-Centric GAS}
    \subsection{Block-Centric BSP}
    \subsection{Edge-Centric BSP}

\addtocontents{toc}{\newpage}

\section{OLAP-Style Analytics}
    \subsection{Graph Summarization}
    \subsection{Snapshot-based Aggregation}
    \subsection{Graph Cube}
    \subsection{Pagrol}
    \subsection{Gagg Model}

\end{document}

enter image description here

enter image description here

ozsu
  • 2,385

1 Answers1

2

I would not use the multicol package with beamer, as beamer has it's own environment for columns. This way you avoid the misalignment at the top.

To make the section and subsection tocs also two column, repeat whatever code you use to get the global toc in two columns for these tocs.

\documentclass[table,xcolor=pdftex,dvipsnames]{beamer}
\usetheme{Madrid}
\usecolortheme{whale}
\beamertemplatenavigationsymbolsempty

\AtBeginSection[]{
    \begin{frame}<beamer>
        \frametitle{Outline}
        \begin{columns}[T]
            \begin{column}{.45\textwidth}
                \tableofcontents[currentsection,sections=1-4]
            \end{column}
            \begin{column}{.45\textwidth}
                \tableofcontents[currentsection,sections=5]
            \end{column}
        \end{columns}
    \end{frame}
}

\AtBeginSubSection[]{
    \begin{frame}<beamer>
        \frametitle{Outline}
        \begin{columns}[T]
            \begin{column}{.45\textwidth}
                \tableofcontents[currentsection,currentsubsection,sections=1-4]
            \end{column}
            \begin{column}{.45\textwidth}
                \tableofcontents[currentsection,currentsubsection,sections=5]
            \end{column}
        \end{columns}
    \end{frame}
}

\begin{document}

\begin{frame}
    \frametitle{Outline}
    \begin{columns}[T]
        \begin{column}{.45\textwidth}
            \tableofcontents[sections=1-4]
        \end{column}
        \begin{column}{.45\textwidth}
            \tableofcontents[sections=5]
        \end{column}
    \end{columns}
\end{frame}

\section{Introduction -- Graph Types}

\section{Property Graph Processing}
    \subsection{Classification}
    \subsection{Online querying}
    \subsection{Offline analytics}
\begin{frame}\end{frame}

\section{Graph Analytics Approaches}
    \subsection{MapReduce \& Variants}
    \subsection{Classification of Native Approaches}
    \begin{frame}\end{frame}

\section{Graph Analytics Systems}
    \subsection{Vertex-Centric BSP}
    \subsection{Vertex-Centric Asynchronous}
    \subsection{Vertex-Centric GAS}
    \subsection{Block-Centric BSP}
    \subsection{Edge-Centric BSP}
\begin{frame}\end{frame}
%\addtocontents{toc}{\newpage}

\section{OLAP-Style Analytics}
    \subsection{Graph Summarization}
    \subsection{Snapshot-based Aggregation}
    \subsection{Graph Cube}
    \subsection{Pagrol}
    \subsection{Gagg Model}
\begin{frame}\end{frame}
\end{document}

enter image description here

  • Thank you, this is great. I was following a suggestion to use multicol in another posting at this site, but this works great. – ozsu Aug 04 '17 at 11:38
  • One thing I just noticed: this shows the TOC at section breaks, but not on subsection breaks. I can't see why, but perhaps you can see something and help? NEVER MIND PLEASE: I noticed that the second definition should be \AtBeginSubection – ozsu Aug 04 '17 at 11:44
  • @ozsu Sorry for that, I forgot to change this after copy&pasting. – samcarter_is_at_topanswers.xyz Aug 05 '17 at 11:43