侧面图未居中

侧面图未居中

我正在尝试将页面上的图形旋转 90 度。我正在使用:

\usepackage{rotating}

然后我的图形代码如下所示:

\begin{sidewaysfigure*}[ht]
  \centering
  \begin{tabular}{@{}cc@{}}
    \includegraphics[width=120mm]{c1713_a_vm.png} &
    \includegraphics[width=120mm]{c1713_b_vm.png}
  \end{tabular}                                       
  \caption{figure caption}
  \label{fig_label}
\end{sidewaysfigure*}

这样产生的图形似乎紧贴左侧,并且缺少一半的标题。我想将其水平居中(如您所见),但我不知道该怎么做。

我发现了类似的问题这里,显然这里的问题在于“mn2e”文档类(用于天体物理学期刊)。我没有使用该类,但我正在使用另一个天体物理学期刊的类(“emulateapj”),这似乎有点巧合!建议的补救措施是:

\RequirePackage{rotating}

在 \documentclass 指令之前。但是当我尝试这样做时,它并没有解决我的问题,并且我得到了以下错误:

*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug

在此处输入图片描述


梅威瑟:

\documentclass{emulateapj}
\newcommand{\vdag}{(v)^\dagger}
\newcommand\aastex{AAS\TeX}
\newcommand\latex{La\TeX}
\usepackage{amsmath,mathtools,etoolbox}
\usepackage{longtable}
\usepackage{float}
\usepackage{tabularx,colortbl}
\usepackage{adjustbox}\usepackage{mathtools}
\usepackage{array}
\usepackage{makecell}
\usepackage{stackengine}
\setstackEOL{\cr}                                                        
\usepackage[table]{xcolor}
\usepackage{adjustbox}
\usepackage{rotating}

\begin{document}

\begin{sidewaysfigure*}[ht]                                                                                                                                                                
  \centering
  \begin{tabular}{@{}cc@{}}
    \includegraphics[width=120mm]{1713_a_vm.png} &
    \includegraphics[width=120mm]{1713_b_vm.png}
  \end{tabular}
  \caption{Figure caption figure caption figure caption.}
  \label{1713_vm}                                                                                                                                                                                             
\end{sidewaysfigure*}

\end{document}

答案1

的默认格式apjtwocolumn。可以使用类选项 将其设置为一列\documentclass[onecolumn]{emulateapj}。实际上,如果选择了这个类选项,则两个图形在页面上水平居中。

带星号的变体sidewaysfigure*旨在将sidewaysfigure环境从两列切换到一列。但是,如果将默认类选项设置为twocolumn,则横向表格仍位于两列页面的第一列(左列)。

\onecolumngrid通过在环境前调用可以强制执行一列sidewaystable。我还更改sidewaysfigure*为,sidewaystable*因为您要将表格而不是图形放在横向环境中。

您可以通过添加和使用来获取Figure标题的前缀。请注意,无法从包中使用。加载标题包会产生许多错误,可能是由于与类文件内部发生的事情发生冲突。\usepackage{capt-of}\captionof{figure}{my caption}\captionofcaptionemulateapj

这是结果,showframe添加了geometry显示定位的选项:

在此处输入图片描述

这是 MWE:

\documentclass{emulateapj}
\newcommand{\vdag}{(v)^\dagger}
\newcommand\aastex{AAS\TeX}
\newcommand\latex{La\TeX}
\usepackage{amsmath,mathtools,etoolbox}
\usepackage[showframe]{geometry}
\usepackage{rotating}
%\usepackage{longtable}
%\usepackage{caption}
%\usepackage{float} 
\usepackage{capt-of}
\usepackage{tabularx,colortbl}
\usepackage{mathtools}
\usepackage{array}
\usepackage{makecell}
\usepackage{stackengine}
\setstackEOL{\cr}                                                        
\usepackage[table]{xcolor}

\begin{document}

\onecolumngrid

\begin{sidewaystable*}
    \begin{tabular}{@{}cc@{}}
    \includegraphics[width=0.45\textheight]{example-image-a} &
    \includegraphics[width=0.45\textheight]{example-image-a}
  \end{tabular}
  \captionof{figure}{ caption figure caption figure caption.}
  \label{1713_vm}
\end{sidewaystable*}

\end{document}

答案2

您可以尝试不sidewaysfigure只是使用 tikz 包,如下所示:

\documentclass[12pt]{article}
\usepackage{tikz}
\usepackage{blindtext}
\usepackage{caption}
\begin{document}

\pagebreak
\thispagestyle{empty}
\begin{tikzpicture}
\node[rotate=-90] at (0,0) {\begin{minipage}{0.98\textheight}
                   \begin{center}
                   I'd like to rotate this page
                   \end{center}
                   \blindtext

                   \centering
                   \includegraphics[width=0.3\textwidth]{example-image-a}
                      \captionof{figure}{Test caption}
                \end{minipage}};
\end{tikzpicture}

\end{document}

你也可以在这里看到我的回答:https://tex.stackexchange.com/a/392793/120578 如果你也想旋转 pdf 页面

相关内容