我正在尝试绘制一个简单的 tikz 图片,其中包括一个 pgf 图和一些简单的 tikz 图形。我想放置一个圆,使其与点 (0,0) 处的抛物线相切。当我使用带单位的值作为圆心的半径和位置时,这种方法很有效,但当我使用相对坐标时,这种方法似乎会失败。
这是我的 MWE:
\documentclass{standalone}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}[scale=1]
\begin{axis}[%hide axis,
xmax=1,xmin=-1,
ymin=-1,ymax=1]
\draw (0,0)--(0,1);
\draw (0,0)--(1,0);
\addplot[gray,thin,domain=-1:1]{x^2};
\addplot[gray,thin,domain=-1:1]{-x^2};
\draw[blue] (0,1cm) circle (1cm);
\draw[gray,thin] (0,.25) circle (.25);
\end{axis}
\end{tikzpicture}
\end{document}
任何帮助都值得感激。提前谢谢您!
答案1
该命令\draw[blue] (0,1cm) circle (1cm);
绘制一个半径为1cm的圆。
该命令\draw[gray,thin] (0,.25) circle (.25);
在轴的坐标系中绘制一个圆。也就是说,它绘制了x^2 + (y-0.25)^2 = 0.25^2
轴坐标系中所有满足的点的集合。
现在请注意,绘图中的 x 刻度和 y 刻度是不同的:x 和 y 的范围都是从 -1 到 +1,但绘图的宽度大于其高度。如果您希望圆看起来像一个圆,则两个轴上的刻度必须相同。请参阅如何保持 x 轴和 y 轴的比例为 1:1。
答案2
%我遇到了类似的问题,如果你把 y 轴上的刻度设为 1.19,它看起来会非常圆,我在另一个 stack exchange 问题上看到过这种情况,但我不知道是哪一个
\documentclass{standalone}
\usepackage{tikz}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\usetikzlibrary{positioning}
\begin{document}
\begin{tikzpicture}[scale=1]
\begin{axis}[%hide axis,
xmax=1,xmin=-1,
ymin=-1,ymax=1,
y post scale=1.19]
\draw (0,0)--(0,1);
\draw (0,0)--(1,0);
\addplot[gray,thin,domain=-1:1]{x^2};
\addplot[gray,thin,domain=-1:1]{-x^2};
\draw[blue] (0,1cm) circle (1cm);
\draw[gray,thin] (0,.25) circle (.25);
\end{axis}
\end{tikzpicture}
\end{document}