Tabelle verschwindet, wenn ich den Befehl seitlich verwende

Tabelle verschwindet, wenn ich den Befehl seitlich verwende

Ich möchte eine Tabelle drehen. Wenn ich die seitliche Tabellenumgebung verwende, verschwindet die Tabelle aus dem Dokument und auch aus der Tabellenliste. Ich habe viel mit verschiedenen möglichen Paketen wie unten ausprobiert. Ich muss die gesamte Tabellenumgebung (Beschriftung, Überschrift usw.) drehen.

\documentclass[12pt]{report}
   \renewcommand{\baselinestretch}{1.5}
   \usepackage[top=1in, bottom=1in, left=1.25in, right=0.75in]{geometry}
                 \usepackage[utf8]{inputenc}
                 \usepackage{amsmath}
                 \usepackage{csvsimple}
                 \usepackage{amssymb}
                 \usepackage{longtable}
                 \usepackage{booktabs}
                 \usepackage{adjustbox}
                 \usepackage{placeins}
                 \usepackage{float}
                 \usepackage{wrapfig}
                 \usepackage{array}
                 \usepackage{tabularx}
                 \usepackage{tabu}
                 \usepackage{setspace} 
                 \usepackage{multirow} 
                 \usepackage{rotating}
                 \usepackage{multirow}
                 \usepackage{longtable}

                 \usepackage{enumitem}
                 \usepackage{pifont}
                 \usepackage{natbib}
                 \usepackage{booktabs}
                 \usepackage{collcell}
                 \usepackage{datatool}
                 \usepackage{pdflscape}
                 \usepackage{graphics}
\begin{document}

\begin{sidewaystable}[H]
    \centering
    \caption{Set table like this}
    \vspace{2mm}
    \begin{tabular}{cccccccccc}\toprule
        &       & Data set 1 &       &       & Data set 2 &       &       & Data set 3 &  \\ \cmidrule(lr){2-4} \cmidrule(lr){5-7} \cmidrule(lr){8-10}
        Estimators & $ n=10 $  & $ n=15 $  & $ n=20 $  & n=10  & $ n=15 $  & $ n=20 $  & $ n=10 $  & $ n=15 $  & $ n=20 $\\ \midrule
        $ \hat{M}_{01} $   & 100.451 & 101.658 & 100.012 & 103.402 & 119.517 & 311.625 & 110.256 & 126.864 & 157.835 \\
        $ \hat{M}_{02} $   & 59.146 & 7407.001 & 1508.683 & 448.119 & 326.131 & 788.717 & 189.374 & 153.392 & 285.499 \\
        $ \hat{M}_{03} $   & 2896.694 & 2828.759 & 1154.403 & 974.536 & 1931.318 & 12350 & 1150.055 & 2778.052 & 1245.779 \\ \bottomrule
    \end{tabular}%
    \label{tex table}%
\end{sidewaystable}%

\end{document}

Antwort1

Sie zeigen nicht, was Sie getan haben, daher ist es nicht möglich zu sagen, was daran falsch ist, aber wenn Sie \begin{table}[H]zu \begin{sidewaystable}und \end{table}zu ändern \end{sidewaystable}, erhalten Sie

Bildbeschreibung hier eingeben


Wenn Sie [H]aufsidewaystable ohneWenn Sie das Paket verwenden float, erhalten Sie eine Fehlermeldung

! LaTeX Error: Unknown float option `H'.

Beim Laden des Float-Pakets Hwird es jedoch im optionalen Argument zugelassen, funktioniert aber nicht, sidewaystablewas dazu führt, dass der Text stillschweigend gelöscht wird, was nicht ideal ist.

Man könnte darüber streiten, ob dies ein Fehler im Paket rotatingoder ist float, aber da ich nur Schreibzugriff auf habe, rotatingwürde ich sagen, dass es ein Problem mit ist float. Ich werde den Betreuer anpingen …

Antwort2

Was passiert, ist ungefähr Folgendes:

  1. sidewaystableist im Wesentlichen ähnlich zu , mit dem Unterschied, dass es tablestatt auszuführen\@float{table}[<pref>]

    \@float{table}[<pref>]\begin{lrbox}{\rot@float@box}
    
  2. Wenn \end{sidewaystable}gefunden wurde, \end{lrbox}wird es erledigt, gefolgt von einigen Wartungsarbeiten und schließlich von \end@float.

Im obigen Code <pref>steht für die expliziten oder die Standardpositionierungseinstellungen.

Im Falle von \begin{sidewaystable}[H]findet TeX

\@float{table}[H]\begin{lrbox}{\rot@float@box}

und tritt nun floatein. Es ändert sich, \@floatum die Optionen zu prüfen; wenn Hgefunden wird, tut es

\@float@HH{sidewaystable}[H]

welches es verschlingt [H], einige Wartungsarbeiten durchführt, darunter die Neudefinition \endsidewaystablevon be \float@endHund mit dem Setzen eines Werts \vboxim Register beginnt \@currbox.

In dem Moment \end{sidewaystable}, in dem gescannt wird, werden zwei Boxen gebildet: \rot@float@boxund \@currbox. Da \begin{lrbox}clevere Tricks mit der Gruppierung verwendet werden, ist die Box fertig und danach auch \@currbox. Aber der Code des Standards \endsidewaystable, der die Box drehen soll, wird nie ausgeführt (und hätte sowieso keine Wirkung, weil beim Schließen von \@currboxdie in gespeicherte Box \rot@float@boxverloren geht, da der Inhalt des Registers auf den Stand vor dem Start von zurückgesetzt wird \vbox\@currbox(also leer ist).

[H]Lösung: Die Verwendung mit ist nicht sinnvoll sidewaystable.

Ich würde sogar noch mehr sagen: a sidewaystablesollte so lange wie möglich vermieden werden und es sollte immer ein Seiten-Float sein. Wenn es beispielsweise als Top-Float eingestellt wird, würde der Leser umständliche Bewegungen ausführen müssen, um die Tabelle anzusehen. Außerdem sidewaystablewürde a, wenn es als Top-Float passt, höchstwahrscheinlich auch als Standard (ungedreht) passen table.

Antwort3

Funktioniert bei mir. Ich habe die Gelegenheit genutzt, siunitxfür eine Ausrichtung numerischer Daten am Dezimalpunkt zu verwenden und für einen korrekten vertikalen Abstand zwischen Beschriftung und Tabelle „load caption“ zu laden, ohne angeben zu müssen \vspace{2mm}, und einige Fehler/Inkonsistenzen korrigiert. Insbesondere sollte der Spezifizierer, wie von @David Carlisle angemerkt, [H]nicht mit verwendet werden sidewaystable.

\documentclass[12pt]{report}
\renewcommand{\baselinestretch}{1.5}
\usepackage[top=1in, bottom=1in, left=1.25in, right=0.75in]{geometry}
             \usepackage[utf8]{inputenc}
             \usepackage{amsmath}
             \usepackage{csvsimple}
             \usepackage{amssymb}
             \usepackage{longtable}
             \usepackage{booktabs}
             \usepackage{adjustbox}
             \usepackage{placeins}
             \usepackage{float}
             \usepackage{wrapfig}
             \usepackage{array}
             \usepackage{tabularx}
            \usepackage{tabu}
             \usepackage{setspace}
             \usepackage{multirow}
             \usepackage{rotating}
             \usepackage{longtable}

             \usepackage{enumitem}
             \usepackage{pifont}
             \usepackage{natbib}
             \usepackage{booktabs}
             \usepackage{collcell}
             \usepackage{datatool}
             \usepackage{pdflscape}
             \usepackage{graphicx}
            \usepackage{siunitx} %
            \usepackage{caption} %

\begin{document}

\begin{sidewaystable}%[H]
    \centering\sisetup{table-format =4.3, table-number-alignment=center}
    \caption{Set table like this}
    \begin{tabular}{c*{9}{S}}\toprule
        & & {Data set 1} & & & {Data set 2} & & & {Data set 3} & \\ %\cmidrule(lr){2-4} \cmidrule(lr){5-7} \cmidrule(lr){8-10}
        Estimators & {$n=10 $} & {$ n=15 $} & {$ n=20 $} & {n=10} & {$ n=15 $} & {$ n=20 $} & {$ n=10 $} & {$ n=15 $} & {$ n=20 $}\\ \midrule
        $ \hat{M}_{01} $ & 100.451 & 101.658 & 100.012 & 103.402 & 119.517 & 311.625 & 110.256 & 126.864 & 157.835 \\
        $ \hat{M}_{02} $ & 59.146 & 7407.001 & 1508.683 & 448.119 & 326.131 & 788.717 & 189.374 & 153.392 & 285.499 \\
        $ \hat{M}_{03} $ & 2896.694 & 2828.759 & 1154.403 & 974.536 & 1931.318 & 12350 & 1150.055 & 2778.052 & 1245.779 \\ \bottomrule
    \end{tabular}%
    \label{tex table}%
\end{sidewaystable}%

\end{document} 

Bildbeschreibung hier eingeben

verwandte Informationen