我想画一些小箭头(可能通过宏)来显示坐标方向,如下图所示。如果还有打开/关闭网格的选项就好了。
生成图表的 MWE:
\documentclass[12pt]{article}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}
[view = {120}{10}
,grid = both
]
\addplot3[surf] {x^2+y^2};
\end{axis}
\end{tikzpicture}
\end{document}
答案1
一种直接的方法是在中设置适当的坐标,rel axis cs
然后在axis
环境外绘制箭头,这样箭头就不会被轴剪裁。
手绘轴线的长度通过 控制\axislength
。例如,用 替换\def\axislength{.2}
可\def\axislength{.3}
使其更长。
\documentclass{standalone}
\usepackage{pgfplots}
\begin{document}
\def\axislength{.2}
\begin{tikzpicture}
\begin{axis}[view = {120}{10},ticks=none,axis lines=none]
\coordinate (O) at (rel axis cs:1,0,0);
\coordinate (x) at (rel axis cs:1,\axislength,0);
\coordinate (y) at (rel axis cs:1-\axislength,0,0);
\coordinate (z) at (rel axis cs:1,0,\axislength);
\addplot3[surf] {x^2+y^2};
\end{axis}
\draw[->] (O) -- (x) node[above] {$x$};
\draw[->] (O) -- (y) node[above] {$y$};
\draw[->] (O) -- (z) node[right] {$z$};
\end{tikzpicture}
\end{document}