Obtenha a proporção de 1:1 entre o gráfico do pgfplot e os "tamanhos do documento"

Obtenha a proporção de 1:1 entre o gráfico do pgfplot e os "tamanhos do documento"

Eu estava tentando fazer com que os comprimentos do gráfico do meu pgfplot tivessem a mesma proporção de comprimento que obtenho nas coordenadas tikz fora dos gráficos, por exemplo.

Aqui está a imagem que uso como exemplificação:

insira a descrição da imagem aqui

\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}

Gostaria de ter uma relação de 1:1 entre o comprimento do eixo e as "coordenadas", mas não sei como fazer isso.

Obrigado.

Responder1

Neste caso você só precisa adicionar [scale only axis]para fixar a largura e a altura para corresponder às coordenadas da tela. As opções [unit vector ratio]ou [equal axis]são redundantes.

\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}

demonstração

informação relacionada