Partly as a challenge and partly because I wanted an electronic copy, I sat down last night to try to LaTeX the following complicated table:
The first problems I encountered were the size and the complex nature of the cells. I managed to overcome the size problem by using a \small type size declaration. However, the heavy (sometimes nested) use of \multirow and multicolumn makes for intensely messy code and I was first wondering if there were any packages that would be better suited to a table such as this.
My next problem is with the internal braces. I haven't yet reached the vertical braces, but I managed the horizontal one you can see just under "WHITE" like this:
\newlength{\bracewidth}
\newcommand{\underoverbrace}[1]{%
\settowidth{\bracewidth}{#1}%
\raisebox{-3.4ex}[1ex][1.5ex]{%
\makebox[0pt][c]{\hspace{\bracewidth}$\overbrace{\quad\phantom{#1}\quad}$}%
}%
#1}%
%Optional arguments of \raisebox are tweaked in final version
{\small
\begin{tabular}{cc}
\multicolumn{2}{c}{\underoverbrace{\textit{V\={a}jasaneyins}}} \\
\textit{M\={a}dhyandinas} & \textit{K\={a}\d{n}vas} \\
\end{tabular}
}
I was quite pleased with this, and the final result (after various tweaks which needed to be applied) looks like this:
After almost completing the first two rows, this is what I had:
\documentclass[10pt,landscape]{article}
\pagestyle{empty}
\usepackage[margin=0.8cm]{geometry}
\geometry{a4paper}
\usepackage[parfill]{parskip}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{multirow}
\usepackage{graphicx}
\newlength{\bracewidth}
\newcommand{\underoverbrace}[1]{%
\settowidth{\bracewidth}{#1}%
\raisebox{-3.4ex}[1ex][0ex]{%
\makebox[0pt][c]{\hspace{\bracewidth}$\overbrace{\quad\phantom{#1}\quad}$}%
}%
#1}%
\begin{document}
\title{Conspectus of the Main Works of Vedic Literature}
\date{}
\author{}
\maketitle
\begin{table}[!ht]
\begin{center}
{\small
\begin{tabular}{c|cc|ccc|cccc|cc|cc}
& \multicolumn{2}{c|}{\multirow{2}{*}{\textsc{\d{R}g-Veda}}} &
\multicolumn{3}{c|}{\multirow{2}{*}{\textsc{S\={a}ma-Veda}}} &
\multicolumn{6}{c|}{\textsc{Yajur-Veda}} &
\multicolumn{2}{c}{\multirow{2}{*}{\textsc{Atharva-Veda}}} \\
& & & & & & \multicolumn{4}{c|}{``Black''} &
\multicolumn{2}{c|}{``White''} & & \\ \hline
& & & & & & & & & &
\multicolumn{2}{c|}{\underoverbrace{\textit{V\={a}jasaneyins}}}
& & \\
& \textit{\'{S}\={a}kalas} & \textit{V\={a}\d{s}kalas} &
\textit{R\={a}\d{n}\={a}yan\={\i}yas} & \textit{Kauthumas} &
\textit{Jaimin\={\i}yas} &
\parbox[c]{17mm}{\centering\textit{Kapi\d{s}\d{t}hala Ka\d{t}has}} &
\parbox[c]{11mm}{\centering\textit{Caraka Ka\d{t}has}} &
\textit{Maitr\={a}ya\d{n}\={\i}yas} &
\textit{Taittir\={\i}yakas} &
\rule{0cm}{-2ex}\textit{M\={a}dhyandinas} &
\textit{K\={a}\d{n}vas} & \textit{\'{S}aunakas} &
\textit{Paippal\={a}das} \\
& \'{S}\={a}kala-S. & V\={a}\d{s}kala-S. &
R\={a}\d{n}\={a}yan\={\i}ya-S. & Kauthuma-S. &
Jaimin\={\i}ya-S. & & & & & M\={a}dhyandina-S. &
K\={a}\d{n}va-S. & \'{S}aunaka-S. & Paippal\={a}da-S. \\
\end{tabular}
}
\end{center}
\end{table}
\end{document}
I thought everything was going really well. But then I tried to add the rotated entry in the first column (it's necessary to rotate this, or it won't fit on the page. I could hyphenate, but it'd start getting silly). I used the answer to this question to generate the following:
Full MWE
\documentclass[10pt,landscape]{article}
\pagestyle{empty}
\usepackage[margin=0.8cm]{geometry}
\geometry{a4paper}
\usepackage[parfill]{parskip}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{multirow}
\usepackage{graphicx}
\newlength{\bracewidth}
\newcommand{\underoverbrace}[1]{%
\settowidth{\bracewidth}{#1}%
\raisebox{-3.4ex}[1ex][0ex]{%
\makebox[0pt][c]{\hspace{\bracewidth}$\overbrace{\quad\phantom{#1}\quad}$}%
}%
#1}%
\begin{document}
\title{Conspectus of the Main Works of Vedic Literature}
\date{}
\author{}
\maketitle
\begin{table}[!ht]
\begin{center}
{\small
\begin{tabular}{c|cc|ccc|cccc|cc|cc}
& \multicolumn{2}{c|}{\multirow{2}{*}{\textsc{\d{R}g-Veda}}} &
\multicolumn{3}{c|}{\multirow{2}{*}{\textsc{S\={a}ma-Veda}}} &
\multicolumn{6}{c|}{\textsc{Yajur-Veda}} &
\multicolumn{2}{c}{\multirow{2}{*}{\textsc{Atharva-Veda}}} \\
& & & & & & \multicolumn{4}{c|}{``Black''} &
\multicolumn{2}{c|}{``White''} & & \\ \hline
\parbox[t]{3mm}{\multirow{3}{*}{\rotatebox[origin=c]{90}{Sa\d{m}hit\={a}}}}
& & & & & & & & & &
\multicolumn{2}{c|}{\underoverbrace{\textit{V\={a}jasaneyins}}}
& & \\
& \textit{\'{S}\={a}kalas} & \textit{V\={a}\d{s}kalas} &
\textit{R\={a}\d{n}\={a}yan\={\i}yas} & \textit{Kauthumas} &
\textit{Jaimin\={\i}yas} &
\parbox[c]{17mm}{\centering\textit{Kapi\d{s}\d{t}hala Ka\d{t}has}} &
\parbox[c]{11mm}{\centering\textit{Caraka Ka\d{t}has}} &
\textit{Maitr\={a}ya\d{n}\={\i}yas} &
\textit{Taittir\={\i}yakas} &
\rule{0cm}{-2ex}\textit{M\={a}dhyandinas} &
\textit{K\={a}\d{n}vas} & \textit{\'{S}aunakas} &
\textit{Paippal\={a}das} \\
& \'{S}\={a}kala-S. & V\={a}\d{s}kala-S. &
R\={a}\d{n}\={a}yan\={\i}ya-S. & Kauthuma-S. &
Jaimin\={\i}ya-S. & & & & & M\={a}dhyandina-S. &
K\={a}\d{n}va-S. & \'{S}aunaka-S. & Paippal\={a}da-S. \\
\end{tabular}
}
\end{center}
\end{table}
\end{document}
But this does not produce good results:
A little experimentation suggests that my various spacing commands for the "\underoverbrace" are (at least partly) responsible for breaking this solution.
So, at this point, I decided to throw in the towel.
The TL;DR
Can I have my cake and eat it? I'd like to find a way to achieve all of the following:
- Internal braces in the table
- Rotated cell entries
- Cells which span columns and/or rows
Additionally, if anybody has any advice on ways to improve either the code, or the output, I'd gladly receive it.
As you can imagine, part of me wants to write a "do it for me" question. But, apart from the fact that that's not really kosher, I'd actually really appreciate it if you didn't do the whole table for me, because I want to have the experience of completing the table myself. However, it is beyond me how to achieve the various effects in the first three rows. It's fairly easy after that. So I'd like to know how to achieve all three of the above in one table.







