我使用 pgfplots 中的以下代码来创建箱线图:
\begin{tikzpicture}
\begin{axis}
[
ytick={1},
yticklabels={},
y=0.7cm
]
\addplot+[boxplot]
table[row sep=\\, y index = 0] {
data\\
2\\ 2\\ 3\\ 3\\ 4\\ 4\\ 4\\ 4 \\
};
\end{axis}
\end{tikzpicture}
这产生了如下箱线图第一的如下图所示:
在第一个箱形图中,我的数据似乎处于 2 到 4 的范围内,因为我的所有结果都在这个范围内。数据的实际范围是 0 到 6。因此,我想在箱形图中显示这一点。这显示在第二图中是箱线图。
我怎样才能做到这一点?
答案1
添加xmin
和xmax
值:
\documentclass[png,tikz,border=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.8}% version
\usetikzlibrary{pgfplots.statistics}
\begin{document}
\begin{tikzpicture}
\begin{axis}
[
ytick={1},
yticklabels={},
y=0.7cm,
xmin=0,
xmax=6,
]
\addplot+[boxplot]
table[row sep=\\, y index = 0] {
data\\
2\\ 2\\ 3\\ 3\\ 4\\ 4\\ 4\\ 4 \\
};
\end{axis}
\end{tikzpicture}
\end{document}
结果:
为了仍然显示 x 刻度 2.5 和 3.5,可以利用以下extra x ticks
密钥:
\documentclass[png,tikz,border=10pt]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.8}% version
\usetikzlibrary{pgfplots.statistics}
\begin{document}
\begin{tikzpicture}
\begin{axis}
[
ytick={1},
yticklabels={},
extra x ticks={2.5,3.5},
y=0.7cm,
xmin=0,
xmax=6,
]
\addplot+[boxplot]
table[row sep=\\, y index = 0] {
data\\
2\\ 2\\ 3\\ 3\\ 4\\ 4\\ 4\\ 4 \\
};
\end{axis}
\end{tikzpicture}
\end{document}
结果:
但恕我直言,最好保留以前的版本或完全切换到更精细的比例,即 0.5。