Estaba usando la técnica descrita.aquípero obtuve un resultado extraño en la imagen (cerca del cursor).
¿Alguna idea de por qué y cómo se puede solucionar?
\documentclass[12pt,openright,twoside]{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{times}
\usepackage[table]{xcolor}
\usepackage{tabularx}
\usepackage{footnote}
\makesavenoteenv{tabular}
\makesavenoteenv{table}
\usepackage{geometry}
\geometry{margin=0.8in}
%for notes
\usepackage[show]{chato-notes}
\definecolor{light-gray}{gray}{0.65}
\definecolor{very-light-gray}{gray}{0.80}
\newcolumntype{b}{X}
\newcolumntype{s}{>{\hsize=.2\hsize}X}
\newcolumntype{v}{>{\hsize=.05\hsize}X}
\begin{document}
\date{}
\maketitle
\begin{table}[htbp]
\centering
%\begin{tabularx}{\textwidth}{| X | X | X |}
\begin{tabularx}{\textwidth}{|b|s|s|}
\hline
Alpha & Beta & Gamma \\ \hline
0 & 2 & 4 \\ \hline
1 & 3 & 5 \\ \hline
\end{tabularx}
\end{table}
\end{document}
Respuesta1
Como ya mencionó @DavidCarlisle, la suma de los anchos debe sumar 3X porque tienes 3 columnas. Por lo tanto, si necesita que la columna 3, por ejemplo, sea, 0.08\textwidth
debe establecerla \hsize=3*0.08 approx 0.25\hsize
en la especificación para \newcolumntype{v}
.
Mi consejo, sin embargo, es simplificar el problema utilizando simplemente la p
columna. Vea las dos opciones a continuación:
%\newcolumntype{b}{>{\hsize=2.15\hsize}X}
%\newcolumntype{s}{>{\hsize=0.6\hsize}X}
%\newcolumntype{v}{>{\hsize=0.25\hsize}X}
\begin{table}[htbp]
\centering
%\begin{tabularx}{\textwidth}{|b|s|v|} % <= This solution
\begin{tabularx}{\textwidth}{|X|p{.2\textwidth}|p{.08\textwidth}|} % <= Or this
\hline
Alpha & Beta & Gamma \\ \hline
0 & 2 & 4 \\ \hline
1 & 3 & 5 \\ \hline
\end{tabularx}
\end{table}
Respuesta2
Supongo que quieres tres X
columnas, las dos últimas tienen un ancho igual a 1/5 del ancho de la primera columna. En este caso, las proporciones α y β, algo así como las coordenadas baricéntricas, deben satisfacer las ecuaciones α = 5β, α + 2β =3, es decir, α=15/7, β=3/7. Una aproximación es 2.15
y 0.425
respectivamente.
Entonces creo que buscas esto:
\documentclass[12pt,openright,twoside]{article}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{mathptmx}
\usepackage[table]{xcolor}
\usepackage{tabularx}
\usepackage{geometry}
\geometry{margin=0.8in, showframe}
\begin{document}
\begin{table}[htbp]
\centering
\begin{tabularx}{\textwidth}{|>{\hsize=2.15\hsize}X|>{\hsize=.425\hsize}X|>{\hsize=.425\hsize}X|}
\hline
Alpha & Beta & Gamma \\ \hline
0 & 2 & 4 \\ \hline
1 & 3 & 5 \\ \hline
\end{tabularx}
\end{table}
\end{document}
Respuesta3
Como conoces las proporciones de tus columnas, es decir, la primera columna debe ser cuatro veces mayor que las otras dos, simplemente puedes hacer algunos cálculos, que debes hacer de tabularx
todos modos.
\documentclass{article}
\usepackage{array}
% The available space is \textwidth
% minus twice the number of columns \tabcolsep spaces
% minus one more than the number of columns \arrayrulewidth
%
% The first two arguments to P are numerator and denominator
% and the third argument is the number of columns
% In this case the fractions are 4/6, 1/6 and 1/6
\newcolumntype{P}[3]{%
p{#1\dimexpr(
\textwidth-
\tabcolsep*\numexpr2*#3\relax-
\arrayrulewidth*\numexpr#3+1\relax
)/#2%
}%
}
\begin{document}
\noindent
X\dotfill X
\noindent
\begin{tabular}{|P{4}{6}{3}|P{1}{6}{3}|P{1}{6}{3}|}
\hline
Alpha & Beta & Gamma \\ \hline
0 & 2 & 4 \\ \hline
1 & 3 & 5 \\ \hline
\end{tabular}
\end{document}
Entonces solo necesitas dividir 1 en partes proporcionales a 4, 1 y 1, es decir, 4/6, 1/6 y 1/6.