从外部文件绘制 3D 点

从外部文件绘制 3D 点

我有一个包含 x、y 和 z 坐标的文件:

4   1   0
9   3   0
9   9   0
3   5   10
0   3   10
9   0   10
1   6   20
9   9   20
1   4   20
7   2   20
10  1   30
4   3   30
3   6   30

我需要使用 TikZ 将它们分散为 3D 中的小球体。这是我使用的代码:

\documentclass[10pt]{article}
\usepackage{graphicx,pgfplots,tikz,tikz-3dplot}
\begin{document}

\begin{figure}
    \begin{tikzpicture}
    \begin{axis}
    [   view={-45}{60},
    xmin=0,xmax=10,
    ymin=0,ymax=10,
    zmin=0, zmax=10,
    ]
    \addplot3[scatter] coordinates {./a.dat};
    \end{axis}

    \end{tikzpicture}
\end{figure}
\end{document}

我收到以下错误:

Package pgfplots Error: Sorry, I could not read the plot coordinates near './a.dat'. Please check for format mistakes. \addplot3 coordinates {./a.dat};

正如@ferahfeza 所建议的,我尝试了\addplot3 [scatter] table[] {./a.dat};,但得到了以下结果。

在此处输入图片描述

答案1

感谢@ferahfeza 的评论,我找到了解决问题的方法。

正确的命令是将scatter参数与一起放在文件名前only marks,并使用关键字:file

\documentclass[10pt]{article}
\usepackage{graphicx,pgfplots,tikz,tikz-3dplot}
\begin{document}

\begin{figure}
    \begin{tikzpicture}
    \begin{axis}
    [   view={-45}{60},
    xmin=0,xmax=10,
    ymin=0,ymax=10,
    zmin=0, zmax=10,
    ]
    \addplot3[scatter, only marks] file{./a.dat};
    \end{axis}

    \end{tikzpicture}
\end{figure}
\end{document}

相关内容