获取 pgfplot 绘图与“文档大小”之间的 1:1 比例

获取 pgfplot 绘图与“文档大小”之间的 1:1 比例

我试图使我的 pgfplot 的绘图长度与我在绘图外的 tikz 坐标中获得的长度比例相同。

以下是我用作示例的图像:

在此处输入图片描述

\documentclass{standalone}
\usepackage{tikz,pgfplots}
\begin{document}
\begin{tikzpicture}

\draw[fill] (0,4.5) coordinate[label={right:\footnotesize{(0,4.5)}}] circle (0.06);
\draw[fill] (6,0) coordinate[label={above:\footnotesize{(6,0)}}] circle (0.06);
\begin{axis}[
  width=6cm,
  height=4.5cm,
  axis lines=middle,
  unit vector ratio=1 1,
  xmax=6,
  ymax=4.5,
  xmin=0,
  ymin=0,
  samples=50,
  xtick distance=1,ytick distance=0.5,
  every tick label/.append style={font=\tiny}
]
\addplot[domain=0:6] {1/\x^2};
\end{axis}

\end{tikzpicture}
\end{document}

我希望轴长和“坐标”之间的比例为 1:1,但我不知道如何做到这一点。

谢谢。

答案1

在这种情况下,您只需添加[scale only axis]以固定宽度和高度以匹配屏幕坐标。[unit vector ratio][equal axis]选项是多余的。

\documentclass{standalone}
\usepackage{tikz,pgfplots}
\begin{document}
\begin{tikzpicture}

\draw[fill] (0,4.5) coordinate[label={right:\footnotesize{(0,4.5)}}] circle (0.06);
\draw[fill] (6,0) coordinate[label={above:\footnotesize{(6,0)}}] circle (0.06);
\begin{axis}[scale only axis,
  width=6cm,
  height=4.5cm,
  axis lines=middle,
  xmax=6,
  ymax=4.5,
  xmin=0,
  ymin=0,
  samples=50,
  xtick distance=1,ytick distance=0.5,
  every tick label/.append style={font=\tiny}
]
\addplot[domain=0:6] {1/\x^2};
\end{axis}

\end{tikzpicture}
\end{document}

演示

相关内容