使“axis cs”成为 PGFPlots 图中默认的坐标系

使“axis cs”成为 PGFPlots 图中默认的坐标系

我想知道是否有办法axis cs在 PGFPlots 中指定绘图内的默认坐标系,这样我就不必axis cs:在每个坐标对前面都输入。这里有一个 MWE,它显示了我的意思(实际绘图无关紧要)。

\documentclass{article}

\usepackage{pgfplots}

\begin{document}

\begin{tikzpicture}
 \begin{axis}[
              xmin=0,
              xmax=80,
              ymin=0,
              ymax=80,
              grid=major,
             ]
  \fill [green, opacity=0.5] (axis cs:14,14) -- (axis cs:80,47) -- (axis cs:80,80) -- (axis cs:47,80) -- cycle;
  \fill [red, opacity=0.5] (0,0) -- (axis cs:80,0) -- (axis cs:80,47) -- (axis cs:14,14) -- (axis cs:47,80) -- (axis cs:0,80) -- cycle;
  \draw [thick] (axis cs:47,80) -- (axis cs:14,14) -- (axis cs:80,47);
 \end{axis}
\end{tikzpicture}

\end{document}

答案1

的当前稳定版本是 1.11 版(2014 年 8 月发布)。如果您在前言中pgfplots写入,它将支持此功能。如果没有此声明,它将与旧行为保持兼容。\pgfplotsset{compat=1.11}

\documentclass{standalone}

\usepackage{pgfplots}

\pgfplotsset{compat=1.11}

\begin{document}

\begin{tikzpicture}
 \begin{axis}[
              xmin=0,
              xmax=80,
              ymin=0,
              ymax=80,
              grid=major,
             ]
  \fill [green, opacity=0.5] (14,14) -- (80,47) -- (80,80) -- (47,80) -- cycle;
  \fill [red, opacity=0.5] (0,0) -- (80,0) -- (80,47) -- (14,14) -- (47,80) -- (0,80) -- cycle;
  \draw [thick] (47,80) -- (14,14) -- (80,47);
 \end{axis}
\end{tikzpicture}

\end{document}

在此处输入图片描述

相关内容