
Например, я пытался получить длины графиков 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}