Ich habe die beschriebene Technik verwendetHieraber ich habe das seltsame Ergebnis erhalten, das im Bild angezeigt wird (in der Nähe des Cursors).
Irgendwelche Ideen, warum das liegt und wie das Problem gelöst werden kann?
\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}
Antwort1
Wie @DavidCarlisle bereits erwähnt hat, sollte die Summe der Breiten 3X ergeben, da Sie 3 Spalten haben. Wenn Sie also beispielsweise Spalte 3 benötigen, sollten Sie dies in der Spezifikation für 0.08\textwidth
festlegen .\hsize=3*0.08 approx 0.25\hsize
\newcolumntype{v}
Mein Rat ist jedoch, das Problem zu vereinfachen, indem man nur die p
Spalte verwendet. Siehe die beiden Optionen unten:
%\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}
Antwort2
Ich vermute, Sie möchten drei X
Spalten, wobei die Breite der letzten beiden 1/5 der Breite der ersten Spalte beträgt. In diesem Fall müssen die Verhältnisse α und β, ähnlich wie baryzentrische Koordinaten, die Gleichungen α = 5β, α + 2β =3 erfüllen, also α = 15/7, β = 3/7. Eine Näherung ist 2.15
bzw. 0.425
.
Ich glaube, Sie wollen Folgendes:
\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}
Antwort3
Da Sie die Proportionen Ihrer Spalten kennen (d. h. die erste Spalte sollte viermal so groß sein wie die anderen beiden), können Sie einfach einige Berechnungen durchführen, die Sie sowieso durchführen müssen tabularx
.
\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}
Sie müssen also nur 1 in Teile teilen, die proportional zu 4, 1 und 1 sind, also 4/6, 1/6 und 1/6.