![pgfplots:调整 xbars 之间的间隙](https://linux22.com/image/361322/pgfplots%EF%BC%9A%E8%B0%83%E6%95%B4%20xbars%20%E4%B9%8B%E9%97%B4%E7%9A%84%E9%97%B4%E9%9A%99.png)
我如何设置条形之间的距离以及条形和轴之间的距离?
如果只有几条横线,那么间隙就太大了。通过缩小总高度,横线和轴之间的间隙就会变得太小。
代码:
\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.15}
\begin{filecontents*}{datatable.txt}
one two
A 1
B 2
\end{filecontents*}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
height=4cm,
xbar,
yticklabels from table={datatable.txt}{one},
ytick=data
]
\addplot table [x=two,y expr=\coordindex] {datatable.txt};
\end{axis}
\end{tikzpicture}
\end{document}
输出:
答案1
- 我使用
width
和height
来定义整个情节的维度。 - 然后我用
enlarge y limits
它来控制底部/顶部栏和图边框之间的间距。 - 控制
bar width
条的宽度。 - 此外,如图所示条形之间的空间、图的高度和宽度,您可以设置键来定义一个逻辑单元的
y
物理单元(我的代码中未显示)。y
y
\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.15}
\begin{filecontents*}{datatable.txt}
one two
A 1
B 2
\end{filecontents*}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
xbar,
width = 50mm,
height = 30mm,
enlarge y limits = 0.5,
bar width = 5mm,
yticklabels from table={datatable.txt}{one},
ytick=data
]
\addplot table [x=two,y expr=\coordindex] {datatable.txt};
\end{axis}
\end{tikzpicture}
\end{document}
向专家提问
图表是如何
xbar
组织的?y 轴是否像普通轴一样,位置为 1、2、3 等等,并且每个条目的增量为 1?