Two small refinements to Jake's solution:
The start and end line have only half of the line width as the
other lines because of pgfplot's clipping of the plot area.
This can be fixed by either disable clipping clip=false or
enlarging the plot are in the vertical directions: enlarge y limits={abs=.6pt} (very thick is 1.2pt).
The more serious issue is that the start and end points of the lines
are not correct, after adding option grid:

The sample points left and right of a jump value do not have the same distance, for example at x = 1.
There are two ways of fixing it:
The first way works by accident only:
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\begin{axis}[axis lines=middle, grid, clip=false]
\addplot [
jump mark right,
mark=*,
domain=-3:3,
samples=19,
very thick, red
] {floor(3*x)+2};
\end{axis}
\end{tikzpicture}
\end{document}
The sample points are marked. The number of samples is the number of lines plus one for an additional end point:

It works only, because x values for the sample points except the first are
a tiny bit (rounding error) too small.
A more stable solution is to use the middle points of the lines. Unhappily it complicates the domain and plot area options.
Version with grid and marked sample points and without clipping:
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axis lines=middle,
grid,
clip=false,
xmin=-3,
xmax=3,
ymin=-7,
ymax=10,
enlarge y limits={abs=.6pt}, % very thick: 1.2pt
]
\addplot [
jump mark mid,
mark=*,
domain=-3 - 1/6:3 + 1/6,
samples=20,
very thick, red
] {floor(3*x)+2};
\end{axis}
\end{tikzpicture}
\end{document}

And the final solution:
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
axis lines=middle,
xmin=-3,
xmax=3,
ymin=-7,
ymax=10,
enlarge y limits={abs=.6pt}, % very thick: 1.2pt
]
\addplot [
jump mark mid,
domain=-3 - 1/6:3 + 1/6,
samples=20,
very thick, red
] {floor(3*x)+2};
\end{axis}
\end{tikzpicture}
\end{document}

ceiland afloorfunction. Thepgfplotsoffers a few options for Constant Plots (see manual v1.8, subsection 4.4.3, pp. 57ff.). The optionjump mark leftfor example might help. – Qrrbrbirlbel Jun 10 '13 at 03:18