tikz を使用して pgfplots グラフ上に半径 x の単純な円を描くにはどうすればよいでしょうか?

tikz を使用して pgfplots グラフ上に半径 x の単純な円を描くにはどうすればよいでしょうか?

tikz を使用してグラフ上に単純な円を描くのに問題があります。ドキュメントのケースや別の質問の他の例を試してみると、斜めの楕円が表示されます。これまでのところ、次のようになります。

\documentclass[12pt]{extarticle}

\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}

\begin{document}

\begin{tikzpicture}[scale=0.8]
  \begin{axis}[
    axis y line=center,
    axis x line=middle, 
    axis on top=false,
    xmin=-6.5, xmax=6.5,
    ymin=-6.5, ymax=6.5,
    grid, 
    xtick={-6,...,6},
    xticklabels={-6,...,6},
    ytick={-6,...,6},
    yticklabels={-6,...,6},
    ]
     
    \draw (0,0) circle [radius=3];
    
  \end{axis}
\end{tikzpicture}

\end{document}

次のように半径を使用すると、対角楕円になります。 ここに画像の説明を入力してください

\draw (0,0) circle [radius=3];次に楕円の形式を変更してみました。\draw (0,0) circle (45pt and 45pt);結果からわかるように、 ここに画像の説明を入力してください 円は表示されますが、X 軸にしか揃わず、Y 軸からはみ出しているように見えます。グラフは実際には正方形ではないのでしょうか、それとも円の書式設定が問題を引き起こしているのでしょうか。

答え1

コードに\draw (x,y) circle[radius=?]追加した後、 を維持しておくと問題なく動作するようです。最終的な動作バージョンは次のとおりです。axis equal image


\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}

\begin{document}

\begin{tikzpicture}[scale=0.8]
  \begin{axis}[
    axis y line=center,
    axis x line=middle, 
    axis on top=false,
    axis equal image,
    xmin=-6.5, xmax=6.5,
    ymin=-6.5, ymax=6.5,
    grid, 
    xtick={-6,...,6},
    xticklabels={-6,...,6},
    ytick={-6,...,6},
    yticklabels={-6,...,6},
    ]   

    \draw (1,3) circle[radius=37pt];
  \end{axis}

\end{tikzpicture}

\end{document}

描画を軸の内側に保つことで、円の配置に関して追加の問題は発生しませんでした。

関連情報