![tikzpicture boxplot,最小示例,段落结束错误](https://linux22.com/image/453560/tikzpicture%20boxplot%EF%BC%8C%E6%9C%80%E5%B0%8F%E7%A4%BA%E4%BE%8B%EF%BC%8C%E6%AE%B5%E8%90%BD%E7%BB%93%E6%9D%9F%E9%94%99%E8%AF%AF.png)
我想在我的文档中添加箱线图。我知道已经有可用的示例,包括在这个网站上,但我很好奇我是否可以得到最简单的示例来运行。我实际上想要添加的图表不应该太复杂;我只需要将多个箱线图并排放置,如果图表太大,可能需要调整大小。
以下是我现在所拥有的:
\documentclass[11pt]{amsart}
\usepackage{tikz}
\usepackage{pgfplots}
\usepgfplotslibrary{statistics}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot [boxplot]
{1,2,3,4,5};
\end{axis}
\end{tikzpicture}
\end{document}
\end{tikzpicture} 之后的行中出现错误:段落在 \pgfflt@readlowlevelfloat 完成之前结束。
我很好奇这个错误意味着什么,以及代码中缺少什么。
编辑:直接引用 pgfplots 手册第 505 页:
数据点可以通过任何支持的输入流给出,尽管最有用的可能是 \addplot 表和 \addplot 坐标。
这让我很好奇支持的输入流是什么,以及为什么没有将简单列表作为其中之一。
无论如何,我尝试了此引文中列出的两个。将行替换{1,2,3,4,5};
为
coordinates {(1),(2),(3),(4),(5)};
或者
coordinates {(1,1),(2,2),(3,3),(4,4),(5,5)};
(以防万一坐标的长度必须至少为 2)
产生错误消息:抱歉,我无法读取第一个 ',(3),(4),(5)' 附近的绘图坐标,第二个绘图坐标也类似。这些行有什么问题?
另一方面,将其替换为
table [row sep=\\,y index=0] {data\\ 1\\ 2\\ 3\\ 4\\ 5};
产生错误消息:扫描 \pgfplotstableread@loop@next 的使用时文件结束。那么这里还是有问题吗?我对row sep=\\
和也很好奇y index=0
;似乎删除其中任何一个都会导致不同的错误。
答案1
输入必须按照手册中为不同绘图类型指定的格式给出。您不能指望 PGFPlots、TikZ 或任何其他编程语言能够猜出您的意思。这是一个可行的示例:
\documentclass[tikz, border=1cm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.18}
\begin{document}
\begin{tikzpicture}
\begin{axis}
\addplot coordinates {(1,1) (2,2) (3,3) (4,4) (5,5)};
\end{axis}
\end{tikzpicture}
\end{document}
手册第 41 页给出了更多示例:
4.3 \addplot 命令:坐标输入
如果需要格式的严格定义,可以在手册第 46 页找到:
4.3.1 坐标列表