Ich versuche, eine Tabelle zu erstellen, die optisch dieWSJ-Märkteseite. Insbesondere hoffe ich, dass es eine einfache Möglichkeit gibt, die Visualisierung aus der Spalte „Bereich“ zu implementieren:
Es scheint mir plausibel, dass es dafür eine etablierte Methode gibt, aber ich weiß nicht, wie ich beschreiben soll, wonach ich suche. Die einzige Option, die mir jetzt einfällt, wäre, alles in TikZ zu machen, aber ich würde diese Komplexität, wenn möglich, lieber vermeiden.
Gibt es eine einfache Möglichkeit, basierend auf einem Eingabewert einen Aufzählungspunkt in ein Bereichsfeld einzufügen?
Antwort1
Etwas wie das?
\documentclass{article}
\usepackage{booktabs}
\usepackage{tikz}
\newcommand\Range[1]{%
\begin{tikzpicture}[scale=0.2]
\fill[gray!40](0,0) rectangle (8,1);
\foreach \x in {2,4,6}\draw[white,very thick](\x,0)--+(0,1);
\fill[black](0.4+#1/100*7.2,0.5) circle (0.4);
\end{tikzpicture}
}
\begin{document}
\begin{tabular}{l}
\toprule
RANGE\\\midrule
\Range{50}\\
\Range{100}\\
\Range{0}\\
\Range{12}\\
\Range{62}\\\bottomrule
\end{tabular}
\end{document}
Antwort2
Noch ein anderer Ansatz.
\documentclass{elsarticle}
\usepackage{xcolor,stackengine}
\def\greybox{\textcolor{gray!50}{\rule{8pt}{1.2ex}}}
\def\backgrid{\greybox\kern1pt\greybox\kern1pt\greybox\kern1pt\greybox}
\setbox0=\hbox{\backgrid}
\edef\backgridwd{\the\wd0}
\newcommand\Range[1]{\stackengine{0pt}{\backgrid}{%
\kern#1\dimexpr\backgridwd\makebox[0pt]{$\mkern.5mu\bullet$}}{O}{l}{F}{F}{L}}
\begin{document}
\begin{tabular}{c}
\hline
Range\\
\hline
\Range{.50}\\
\Range{1.00}\\
\Range{0}\\
\Range{.12}\\
\Range{.62}
\\
\hline
\end{tabular}
\end{document}
Antwort3
Ich habe letztendlich das sparklines
Paket verwendet:
\documentclass{article}
\usepackage{sparklines,booktabs}
\begin{document}
\definecolor{sparkspikecolor}{gray}{1}
\setlength{\sparkspikewidth}{1pt}
\setlength{\sparkdotwidth}{2pt}
\newcommand{\rangebox}[1]{
\begin{sparkline}{10}
\sparkrectangle 0 1
\sparkspike .25 1
\sparkspike .5 1
\sparkspike .75 1
\sparkdot #1 0.5 black
\end{sparkline}
}
\begin{tabular}{c}
\toprule
Range
\\\midrule
\rangebox{.2}\\
\rangebox{1}\\
\rangebox{0}\\
\rangebox{.8}\\
\rangebox{.95}\\\bottomrule
\end{tabular}
\end{document}