Colores de fila alternativos en tabla larga

Colores de fila alternativos en tabla larga

Estoy usando el método propuesto por Nikos Alexandris en"¿Cómo aplicar coloración de filas alternativas en una tabla larga en LyX?"

funciona de forma limitada, pero las filas sombreadas no ocupan todo el ancho de la página. Sombreado por celda, pero el sombreado rompe las líneas de las columnas y hay espacios en el sombreado.

Aquí está mi código tex de ejemplo que hace el sombreado roto. El texto se genera automáticamente, por lo que solo muestro una tabla breve. los datos reales son más largos y normalmente deben abarcar páginas con encabezados 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}

Respuesta1

colortblno le gusta mucho \extracolsep. Para celdas individuales puedes jugar con los argumentos salientes opcionales, pero para filas eso es un poco difícil.

Además, su mesa no tiene todo el ancho ya que el \extracolseppegamento se equilibra con \LTleftel \LTrightpegamento que se encuentra a ambos lados de la mesa.

Si lo haces a todo lo ancho, hacer las bandas de colores es mucho más fácil, ya que sabes de antemano qué tamaño deben tener:

ingrese la descripción de la imagen aquí

\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}

información relacionada