Estou usando o método proposto por Nikos Alexandris em"Como aplicar coloração de linha alternativa em uma tabela longa no LyX?"
funciona até certo ponto, mas as linhas sombreadas não preenchem toda a largura da página. Sombreamento por célula, mas o sombreamento quebra as linhas das colunas e há lacunas no sombreamento.
aqui está meu exemplo de código tex que faz o sombreamento quebrado. O tex é gerado automaticamente, então estou apenas mostrando uma pequena tabela. os dados reais são mais longos e normalmente devem abranger páginas com cabeçalhos repetidos.
\date{\today}
\documentclass[9pt]{article}
\usepackage{graphicx}
\usepackage{longtable}
\usepackage[margin=0.5in]{geometry}
\usepackage{fancyhdr}
\LTchunksize=200
\setlength{\parindent}{0cm}
\title{test}
\author{R}
\setlength{\headheight}{0.4in}
\setlength{\headwidth}{\textwidth}
\usepackage[table]{xcolor}
% define lightgray
\definecolor{lightgray}{gray}{0.9}
% alternate rowcolors for all long-tables
\let\oldlongtable\longtable
\let\endoldlongtable\endlongtable
\renewenvironment{longtable}{\rowcolors{2}{white}{lightgray}\oldlongtable} {
\endoldlongtable}
\begin{document}
\section{Sector}
\begin{longtable}{ @{\extracolsep{\fill}} |l | r | r | r | r | r|}
\hline
{} & Beta & Phys & Phys & Phys & comp \\
Industry Code & {} & {} & {} & {} & {} \endhead
\hline
Materials & 16,365,792 & 13,419,455 & 13,419,455 & 0.00 & -201,593 \\
Goods & 471,925 & 1,110,412 & 1,110,412 & 0.00 & -11,947 \\
Services & 7,122,991 & 8,511,225 & 9,492,570 & -981,345 & -75,117 \\
Banks & 5,078,280 & 6,123,238 & 12,084,671 & -5,961,433 & -69,738 \\
Health & 2,141,346 & 5,059,382 & 5,059,382 & 0.00 & -26,319 \\
Industrials & -6,013,491 & -4,758,346 & 6,036,445 & -10,794,791 & 3,722 \\
row & -4,093,746 & -3,755,730 & 0.00 & -3,755,730 & 45,628 \\
row & -1,753,606 & -1,006,601 & 2,533,792 & -3,540,393 & -18,962 \\
Consumer & 2,227,195 & 2,317,581 & 2,317,581 & 0.00 & -30,632 \\
All & 20,808,544 & 25,160,345 & 54,728,908 & -29,568,563 & nan \\
\hline
\end{longtable}
\end{document}
Responder1
colortbl
não gosta muito \extracolsep
. Para células individuais, você pode mexer nos argumentos opcionais de saliência, mas para linhas isso é um pouco difícil.
Além disso, sua mesa não tem largura total, pois a \extracolsep
cola é equilibrada por \LTleft
uma \LTright
cola que fica em ambos os lados da mesa.
Se você fizer na largura total, fazer as faixas coloridas fica muito mais fácil, pois você sabe com antecedência o tamanho que elas precisam ter:
\documentclass[9pt]{article}
\usepackage{graphicx}
\usepackage{longtable}
\usepackage[margin=0.5in]{geometry}
\usepackage{fancyhdr}
\LTchunksize=200
\setlength{\parindent}{0cm}
\title{test}
\author{R}
\setlength{\headheight}{0.4in}
\setlength{\headwidth}{\textwidth}
\usepackage[table]{xcolor}
% define lightgray
\definecolor{lightgray}{gray}{0.9}
% alternate rowcolors for all long-tables
\let\oldlongtable\longtable
\let\endoldlongtable\endlongtable
%\renewenvironment{longtable}{\rowcolors{2}{white}{lightgray}\oldlongtable} {
%\endoldlongtable}
\def\zza{\global\let\zz\zzb
\fullwidthcolor{lightgray}}%
\def\zzb{\global\let\zz\zza}
\def\fullwidthcolor#1{\color{#1}\leaders\vrule\hskip\textwidth\hskip-\textwidth\kern0pt}
\def\resetLTcolor{\global\let\zz\zza}
\LTleft0pt
\LTright0pt
\begin{document}
\section{Sector}
\resetLTcolor
\begin{longtable}{ @{\zz\extracolsep{\fill}} |l | r | r | r | r | r|}
\hline
\multicolumn{1}{@{\fullwidthcolor{yellow}\extracolsep{\fill}} |l |}{}
& Beta & Phys & Phys & Phys & comp \\
\multicolumn{1}{@{\fullwidthcolor{yellow}\extracolsep{\fill}} |l |}{Industry Code}
& {} & {} & {} & {} & {} \endhead
\hline
Materials & 16,365,792 & 13,419,455 & 13,419,455 & 0.00 & -201,593 \\
Goods & 471,925 & 1,110,412 & 1,110,412 & 0.00 & -11,947 \\
Services & 7,122,991 & 8,511,225 & 9,492,570 & -981,345 & -75,117 \\
Banks & 5,078,280 & 6,123,238 & 12,084,671 & -5,961,433 & -69,738 \\
Health & 2,141,346 & 5,059,382 & 5,059,382 & 0.00 & -26,319 \\
Industrials & -6,013,491 & -4,758,346 & 6,036,445 & -10,794,791 & 3,722 \\
row & -4,093,746 & -3,755,730 & 0.00 & -3,755,730 & 45,628 \\
row & -1,753,606 & -1,006,601 & 2,533,792 & -3,540,393 & -18,962 \\
Consumer & 2,227,195 & 2,317,581 & 2,317,581 & 0.00 & -30,632 \\
All & 20,808,544 & 25,160,345 & 54,728,908 & -29,568,563 & nan \\
\hline
\end{longtable}
\end{document}