Estrellas de importancia estadística

Estrellas de importancia estadística

¿Qué hay de malo en mi código de tres estrellas ( ***)? Es tan feo comparado con mi **y *.

\documentclass{article}
\newcommand{\oneS}{\ensuremath{{}^{\textstyle *}}}
\newcommand{\twoS}{\ensuremath{{}^{\textstyle **}}}
\newcommand{\threeS}{\ensuremath{{}^{\textstyle ***}}}

\begin{document}

0.11\oneS \newline

0.11\twoS \newline

0.11\threeS

\end{document}

Respuesta1

La estrella se trata como un operador binario. En los dos primeros casos, no hay suficientes átomos matemáticos para un operador binario, pero en el tercer caso, la primera estrella se "multiplica" con la tercera estrella y la segunda estrella se establece como operador binario con espacios adicionales. Puedes deshacerte de este comportamiento poniendo la estrella entre llaves. Las llaves en modo matemático crean una subfórmula que se trata como un átomo matemático ordinario:

{*}{*}{*} or *{*}*

También \textstylese puede mejorar. Probablemente debería evitar que la estrella esté configurada en \scriptstyle como superíndice mientras que el número tiene un tamaño normal. \mathchoiceayuda aquí. Se necesitan cuatro argumentos para los cuatro estilos y TeX usa el argumento para el estilo que finalmente está activo.

\documentclass{article}
\newcommand*{\SuperScriptSameStyle}[1]{%
  \ensuremath{%
    \mathchoice
      {{}^{\displaystyle #1}}%
      {{}^{\textstyle #1}}%
      {{}^{\scriptstyle #1}}%
      {{}^{\scriptscriptstyle #1}}%
  }%
}

\newcommand*{\oneS}{\SuperScriptSameStyle{*}}
\newcommand*{\twoS}{\SuperScriptSameStyle{**}}
\newcommand*{\threeS}{\SuperScriptSameStyle{*{*}*}}

\begin{document}

0.11\oneS

0.11\twoS

0.11\threeS

$\frac{0.11\oneS}{0.11\twoS_{0.11\threeS}}$

\end{document}

Resultado

Suma

Usando LaTeX \mathpalettela definición se puede simplificar un poco:

\newcommand*{\SuperScriptSameStyle}[1]{%
  \ensuremath{%
    \mathpalette\SuperScriptSameStyleAux{#1}%
  }%
}
\newcommand*{\SuperScriptSameStyleAux}[2]{%
  % #1: math style
  % #2: superscript
  {}^{#1#2}%
}

Respuesta2

Aquí hay una solución, pero no sé por qué.

\documentclass{article}
\newcommand{\oneS}{\ensuremath{{}^{\textstyle *}}}
\newcommand{\twoS}{\ensuremath{{}^{\textstyle **}}}
\newcommand{\threeS}{\ensuremath{{}^{\textstyle **}\oneS}}
\begin{document}
0.11\oneS \par
0.11\twoS \par
0.11\threeS
\end{document}

Respuesta3

Otra solución:

\usepackage{mathabx}
\newcommand{\threeS}{\ensuremath{{}^{\textstyle 
  \asterisk\asterisk\asterisk}}}

O simplemente

\newcommand{\threeS}{\ensuremath{^{***}}}

Pero la versión de Heiko Oberdiek es mucho mejor.

información relacionada