I'd like to space out the node values on the bars so that they are clearly visible. What do you recommend for the ones that are partially hidden? Can I do this automagically? Also I'd like to use the plot coordinates rather than the cumulative values of probability. Where abouts is that in the pgfplots handbook?

\documentclass[tikz,border=12pt]{standalone}
\usepackage{pgfplots}
\usepackage{subfig}
\usepackage{tabularx}
\usepackage{verbatim}
\pgfplotsset{compat=newest}
%\usepgfplotslibrary{external}
%\tikzexternalize
%\documentclass{article}
%\usepackage{tikz}
\usetikzlibrary{shapes,arrows}
\usetikzlibrary{calc,
arrows,decorations.pathmorphing,
backgrounds,fit,positioning,shapes.symbols,chains}
\usetikzlibrary{decorations.pathreplacing}
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
%
\begin{document}
\begin{tikzpicture}
\begin{axis}[
ybar stacked,
legend style={at={(0.5,-0.50)},
anchor=north,legend columns=-1},
ylabel={Probability},
symbolic x coords={{Direct Care}, Housekeeping, Mealtimes, {Medication Round},
Miscellaneous,{Personal Care}},
xtick=data,
ymax=1,
x tick label style={rotate=45,anchor=east},
every node near coord/.style={
check for zero/.code={
\pgfkeys{/pgf/fpu=true}
\pgfmathparse{\pgfplotspointmeta-.1}
\pgfmathfloatifflags{\pgfmathresult}{-}{
\pgfkeys{/tikz/coordinate}
}{}
\pgfkeys{/pgf/fpu=false}
}, check for zero, yshift=-5pt, font=\footnotesize},
nodes near coords={\pgfmathprintnumber[precision=2]{\pgfplotspointmeta}},
nodes near coords align={center}
]
\addplot+[ybar,bar width=20pt] plot coordinates {({Direct Care},0.258883249)
({Housekeeping},0.176470588)
({Mealtimes},0.19047619)
({Medication Round},0.207207207)
({Miscellaneous},0.222222222)
({Personal Care},0.615384615)
};
\addplot+[ybar,bar width=20pt] plot coordinates {({Direct Care},0.015228426)
({Housekeeping},0.235294118)
({Mealtimes},0)
({Medication Round},0.027027027)
({Miscellaneous},0)
({Personal Care},0.153846154)
};
\addplot+[ybar,bar width=20pt] plot coordinates {({Direct Care},0.152284264)
({Housekeeping},0.058823529)
({Mealtimes},0.333333333)
({Medication Round},0.351351351)
({Miscellaneous},0.180555556)
({Personal Care},0.153846154)
};
\legend{{Handwash only},{Gloves only},{Alcohol rub only}}
\end{axis}
\end{tikzpicture}
\end{document}

point meta=rawyas described (very sparsely) in section 4.22. SKIPPING OR CHANGING COORDINATES / FILTERS – Tom Bombadil Jul 17 '13 at 18:36\addplot table, so you'd probably need to change your data input. – Tom Bombadil Jul 17 '13 at 19:37widthandheightsuch that there is enough space for the numbers to fit in (with smaller fonts maybe). Otherwise my opinion is that it looks very crowded. – percusse Jul 17 '13 at 23:27calculate offset/.code={ \pgfkeys{/pgf/fpu=true,/pgf/fpu/output format=fixed} \pgfmathsetmacro\testmacro{(\pgfplotspointmeta*10^\pgfplots@data@scale@trafo@EXPONENT@y)/2*\pgfplots@y@veclength)} \pgfkeys{/pgf/fpu=false} }How can I get rid of the bit that creates 10^ and just place the values in the middle? – HCAI Jul 18 '13 at 07:56\addplot+[...as the text centered in the bars. Can this be done¿ – HCAI Jul 18 '13 at 20:32