我正在尝试使用 TikZ 数据可视化库可视化一些数据。给定 foo.tex
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{datavisualization}
\begin{document}
\begin{tikzpicture}
\datavisualization [ scientific axes, visualize as scatter ] data [ read from file=foo.dat ];
\end{tikzpicture}
\end{document}
和foo.dat:
x, y
1, 2
3, 4
5, 6
失败并出现以下错误(重复多次):
! Package PGF Math Error: Sorry, an internal routine of the floating point unit got an ill-formatted floating point number `'. The unreadable part was near ''..
See the PGF Math package documentation for explanation.
Type H <return> for immediate help.
...
l.7 ... scatter ] data [ read from file=foo.dat ];
如果我宁愿内联包含来自 foo.dat 的数据,文档就会正常编译。我遗漏了什么?如何修复该问题?
我在 Windows 7 上运行 TeXLive 2014。所有文件都使用 Unix 行尾。
编辑:我已删除数据文件中的所有逗号,并将分隔符明确设置为 \space,现在它可以正常工作了。
还有一个问题:TikZ文档说:
/pgf/data/separator=<character>(无默认值,最初为,)
这是什么意思?初始值和默认值有什么区别?
答案1
我会考虑从中删除标题foo.dat
。如果您在内部确定标题,则出错的可能性显然较小(尽管我也对错误感到惊讶)。这是一个简单的解决方案,也适用于包含大量数据的文件。工作文件如下所示:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{datavisualization}
\begin{document}
\begin{tikzpicture}
\datavisualization [ scientific axes, visualize as scatter ] data [headline={x, y},read from file="foo.dat"];
\end{tikzpicture}
\end{document}
食物数据
1, 2
3, 4
5, 6
答案2
仅供参考,在此期间可能已进行更新,因此您的原始代码和数据(带标题)可以正常编译。但另请参阅数据头的另一个示例。
代码:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{datavisualization}
\begin{document}
\begin{tikzpicture}
\datavisualization [
scientific axes,
visualize as scatter ] data [ read from file=foo.dat ];
\end{tikzpicture}
\end{document}
foo.dat:
x, y
1, 2
3, 4
5, 6