Pgfplots 图形刻度标签定位问题与 latex->dvi 有关(但与 pdflatex->pdf 无关)

Pgfplots 图形刻度标签定位问题与 latex->dvi 有关(但与 pdflatex->pdf 无关)

我正在尝试在 pdfplots 轴上绘制图像文件。这是一个最小示例(文件 fig2a.eps 和 fig2a.png 都包含应绘制的图像):

\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usepackage{tikz,pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot graphics[xmin=-0.15, xmax=0.15, ymin=0.0, ymax=0.2] {fig2a};
\end{axis}
\end{tikzpicture}
\end{document}

使用 pdflatex 编译时,我得到了我想要的结果。使用 latex(生成 dvi 文件)时,刻度标签在图像内全部相互重叠,因此定位出现了问题。

我认为版本信息在这种情况下很有用——从输出到屏幕,我在运行 latex 和 pdflatex 时都有这个:

This is pdfTeX, Version 3.1415926-2.4-1.40.13 (TeX Live 2012)

我究竟做错了什么?

答案1

dvi 输出只是一种中间格式;无法被查看。

我想您查看了生成的 .pdf 或 .ps?如果是这样,您是如何将 .dvi 转换为 .pdf(或 .ps)的?TikZ 需要知道这个所谓的“驱动程序”才能生成正确的输出 dvi。如果没有正确的驱动程序,输出就会搞砸。

以下是最常见驱动程序的简要列表:

% needed for latex; dvipdfm
%\def\pgfsysdriver{pgfsys-dvipdfm.def}

% needed for pdflatex and/or lualatex (it is detected by default)
%\def\pgfsysdriver{pgfsys-pdftex.def}

% needed by latex; dvips (it is detected by default)
%\def\pgfsysdriver{pgfsys-dvips.def}

% needed by latex; dvipdfmx
%\def\pgfsysdriver{pgfsys-dvipdfmx.def}

% needed by xelatex 
%\def\pgfsysdriver{pgfsys-xetex.def}
\usepackage{pgfplots} % or \usepackage{tikz}; same thing.

如果您使用latex; dvipspdflatexlualatex,则会自动检测驱动程序。在所有其他情况下,您需要编写正确的驱动程序语句。

相关内容