
例如,我試圖讓 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}