pgf 堆积条形图显示不正确 - 与 x 轴的交点错误

pgf 堆积条形图显示不正确 - 与 x 轴的交点错误

我正在尝试使用以下代码生成条形图。如您所见,条形图没有从零开始,而它应该从零开始。它从零以下开始!!!有人能帮帮我吗?

\documentclass[a4paper,11pt,twoside,openright]{scrreprt}
\usepackage{tikz} %used for pgfplots
\usepackage{pgfplots, pgfplotstable} % to create diagrams, plots, ...
\usepackage{filecontents}

\begin{document}

% Results IPPC
\begin{filecontents}{labelIPPC.dat}
X   start  Container    T-DO        T-MRF   MRF     T-Rec   label
1   0      335489       4894217     536423  944172  82159   \space  
2   0      428004       101754      1033659 3289363 64989   \space 
3   0      508863       101754      739925  1040748 89001   \space
4   0      254431       101754      739925  1040748 89001   IPPC\space 2013 
5   0      254431       101754      683838  1016135 86948   \space 
6   0      254431       101754      652601  991521  85590   \space 
\end{filecontents}

\begin{figure}[!htbp]
\centering
\caption{Results of ecological analysis for future scenarios}
\begin{tikzpicture}
\pgfplotsset{
    ybar stacked,
    %set layers, 
    width=0.7\textwidth,
    every axis legend/.append style={nodes={right}},
    legend style={at={(0.5,-0.30)}, anchor=north, legend columns=1},
    x tick label style={rotate=90},
    xticklabels={Scenario 1,Scenario 2,Scenario 3,Scenario 4,Scenario 5,Scenario 6},
    xtick={1,...,6},
    point meta=explicit symbolic, % label und nicht zahl darstellen
    }

\begin{axis} [
scale only axis,
axis y line*=left,
y tick label style={/pgf/number format/1000 sep=',
        /pgf/number format/fixed,
        /pgf/number format/sci},
scaled ticks=false,
ylabel near ticks,
ylabel={UBP (Eco-points)},
ybar,
bar shift=-0.34cm, % half of bar width
bar width=0.6cm,
]
%\addplot + [color=red!50!white] table[x=X, y=start, meta=label] {labelIPPC.dat};

\addplot + [color=red!50!white] table[x=X, y=Container, meta=label] {labelIPPC.dat};
\addlegendentry{Container}

\addplot + [color=green!50!white]  table[x=X, y=T-DO, meta=label]                       {labelIPPC.dat};
\addlegendentry{Transport to drop-off site}

\addplot + [color=blue!50!white]  table[x=X, y=T-MRF, meta=label] {labelIPPC.dat};
\addlegendentry{Transport to MRF}

\addplot + [color=orange!50!white]  table[x=X, y=MRF, meta=label] {labelIPPC.dat};
\addlegendentry{Material recovery facility}

\addplot + [color=black!50!white, nodes near coords, every node near coord/.append style={rotate=90, anchor=west}]  table[x=X, y=T-Rec, meta=label] {labelIPPC.dat};
\addlegendentry{Transport to recycling facility}

\end{axis}
\end{tikzpicture}
\label{fig:Results_Scenarios}
\end{figure}
\end{document}

如果包含注释的 \addplot,它会从零开始,但图例会乱序。我真的希望有人能帮助我。

非常感谢

答案1

我遇到了同样的问题,并根据以下评论达斯比斯以下对我有用(并且还修复了您的示例):

除此以外ymin=0,让条形图从轴的正上方开始,您还可以enlargelimits=true向轴选项添加附加选项,以使空白回到轴和条形图的起点之间。

不过,我仍然不明白的是,我有一个堆积条形图,其中我不需要明确使用这些选项,而另一个仅有的工作这些显式选项。这些图之间的唯一区别在于,第一个图有附加addplot命令,因此其条形图由更多段组成。

我希望这有帮助。

相关内容