我正在尝试创建一个条形图,我对结果几乎很满意。我得到的是这样的
我想要的更改可以在下图中看到。我试图将每个条形图的值置于条形图的中心。另外,我不希望 1 位于顶部,而是应该显示红色条形图的实际高度。
知道如何进行这些更改吗?我尝试查看这里http://pgfplots.net/tikz/examples/stacked-bar-plot/,但我不确定我做了什么不同的事情。
还有什么方法可以避免在红色条上书写?因为我总是希望蓝色条减去红色条的高度等于 1。
代码
\documentclass[12pt, a4paper, border=2mm]{standalone}
\usepackage{pgfplots}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
ybar stacked,
bar width=20pt,
x=1cm,
nodes near coords,
enlargelimits=0.15,
ymin = 0,
legend style={at={(0.5,-0.20)},
anchor=north,legend columns=-1},
ylabel={Winning probability},
symbolic x coords={tool1, tool2, tool3, tool4,
tool5, tool6, tool7, tool8},
xtick={tool1, tool2, tool3, tool4,
tool5, tool6, tool7, tool8},
xticklabels = {(1,8), (2,7), (3,6), (4,5), (5,4), (6,3), (7,2), (8,1)},
x tick label style={rotate=45,anchor=east},
]
\addplot+[ybar] plot coordinates {
(tool1,0.778)
(tool2,0.611)
(tool3,0.500)
(tool4,0.444)
(tool5,0.444)
(tool6,0.500)
(tool7,0.611)
(tool8,0.778)};
\addplot+[ybar] plot coordinates {
(tool1,0.222)
(tool2,0.389)
(tool3,0.500)
(tool4,0.556)
(tool5,0.556)
(tool6,0.500)
(tool7,0.389)
(tool8,0.222)};
\legend{\strut Knut wins, \strut Nora wins}
\end{axis}
\end{tikzpicture}
\end{document}
答案1
添加
\pgfplotsset{compat=1.9}
(或某个更高的版本号)添加到序言中。