Problema risolto. La spiegazione è a pag. 359 (par. 8.1) del manuale di pgfplots, nel capoverso che inizia con keep in mind.
Ti allego il codice realizzato con datatool e quello realizzato con pgfplotstable, come suggerito da Claudio. Scegli tu la soluzione che ti piace di più.
Fammi sapere se ci sono altri problemi.
`\documentclass{article}
\usepackage{datatool}
\usepackage[svgnames]{xcolor}
\usepackage{pgfplots}
\usepgfplotslibrary{dateplot}
\usetikzlibrary{shadings,shadows,fadings,calc}
\DTLloaddb[noheader=false]{misure}{dati.dat}
\begin{document}
\begin{tikzpicture}
\tikzfading [name=dissolvenza, top color=transparent!0, bottom color=transparent!95]
\tikzstyle{ripieno}=[top color=DodgerBlue, bottom color=RoyalBlue, general shadow={fill=black, shadow yshift=-0.8ex, path fading=dissolvenza}]
\def\h{0.3} % semialtezza del rettangolo
\begin{axis} [xmin=2009-03-28, xmax=2012-07-10, y dir=reverse, xmajorgrids=true,
date coordinates in=x, date ZERO=2009-03-28,
xtick={2009-03-28,2009-10-14,2010-05-02,2010-11-18,2011-06-06,2011-12-23,2012-07-10},
xticklabel={\day-\month-\year}, x tick label style={rotate=45,anchor=east},
ytick={1,2,3,4}, ylabel=Misure]
\DTLforeach*{misure}%
{\skip=i,\inizio=inizio,\fine=fine}%
{\edef\temp{
\noexpand
\fill [ripieno] (axis cs:\inizio,\skip) ++ (axis direction cs:2009-03-28,-\h)
rectangle ($(axis cs:\fine,\skip) + (axis direction cs:2009-03-28,\h)$);}
\temp}
\addplot [draw=none] coordinates {(2009-03-28,0.7) (2012-07-10,4.3)};
\end{axis}
\end{tikzpicture}
\end{document}`
`\documentclass{article}
\usepackage[svgnames]{xcolor}
\usepackage{pgfplots}
\usepgfplotslibrary{dateplot}
\usetikzlibrary{shadings,shadows,fadings,calc}
\pgfplotstableread{dati.dat}{\misure}
\pgfplotstablegetrowsof{\misure}
\pgfmathsetmacro{\righe}{\pgfplotsretval-1}
\begin{document}
\begin{tikzpicture}
\tikzfading [name=dissolvenza, top color=transparent!0, bottom color=transparent!95]
\tikzstyle{ripieno}=[top color=DodgerBlue, bottom color=RoyalBlue, general shadow={fill=black, shadow yshift=-0.8ex, path fading=dissolvenza}]
\def\h{0.3} % semialtezza del rettangolo
\begin{axis} [xmin=2009-03-28, xmax=2012-07-10, y dir=reverse, xmajorgrids=true,
date coordinates in=x, date ZERO=2009-03-28,
xtick={2009-03-28,2009-10-14,2010-05-02,2010-11-18,2011-06-06,2011-12-23,2012-07-10},
xticklabel={\day-\month-\year}, x tick label style={rotate=45,anchor=east},
ytick={1,2,3,4}, ylabel=Misure]
\foreach \i in {0,…,\righe}
{
\pgfplotstablegetelem{\i}{i}\of\misure
\let\skip\pgfplotsretval
\pgfplotstablegetelem{\i}{inizio}\of\misure
\let\inizio\pgfplotsretval
\pgfplotstablegetelem{\i}{fine}\of\misure
\let\fine\pgfplotsretval
\edef\temp{
\noexpand
\fill [ripieno] (axis cs:\inizio,\skip) ++ (axis direction cs:2009-03-28,-\h)
rectangle ($(axis cs:\fine,\skip) + (axis direction cs:2009-03-28,\h)$);}
\temp
}
\addplot [draw=none] coordinates {(2009-03-28,0.7) (2012-07-10,4.3)};
\end{axis}
\end{tikzpicture}
\end{document}`