我期望在 (2,2) 处看到一个实心黑色圆点,但我什么也没看到。
这是我正在使用的代码
\documentclass[]{article}
\usepackage{amsmath}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
[
restrict y to domain=-10:10,
restrict x to domain=-5:5,
xlabel=$x$,
ylabel=$y$,
xmin=-4,
xmax=4,
xtick={-4,-2,...,4},
ymin=-4,
ymax=4,
ytick={-4,-2,...,3},
axis lines=center,
axis equal,
smooth,
scale=0.8
]
\addplot [] {(x-2)^3-3*x+6};
\coordinate
[
label=above:{$(2,2)$},
black,
mark=*,
] (a) at (axis cs:2,2);
\end{axis}
\end{tikzpicture}
\end{document}
显然,软件可以算出 (2,2) 处有一个坐标,但就是不显示它。有人知道为什么会发生这种情况吗?
答案1
坐标没有(节点)内容。为了几乎完整地保留您的语法,我添加了cmark
在坐标中心添加绘图标记的样式。
\documentclass[]{article}
\usepackage{amsmath}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}[cmark/.style={label={[anchor=center]:\pgfuseplotmark{#1}}}]
\begin{axis}
[
restrict y to domain=-10:10,
restrict x to domain=-5:5,
xlabel=$x$,
ylabel=$y$,
xmin=-4,
xmax=4,
xtick={-4,-2,...,4},
ymin=-4,
ymax=4,
ytick={-4,-2,...,3},
axis lines=center,
axis equal,
smooth,
scale=0.8
]
\addplot [] {(x-2)^3-3*x+6};
\coordinate
[
label=above:{$(2,2)$},
black,
cmark=*,
] (a) at (axis cs:2,2);
\end{axis}
\end{tikzpicture}
\end{document}
其他选项包括使用node
s。请注意,如果您使用足够新的 pgfplots 版本,例如\pgfplotsset{compat=1.16}
,则不需要前缀axis cs:
。