  A \emph{Stick graph} is an intersection graph of axis-aligned segments such
that the left end-points of the horizontal segments and the bottom end-points
of the vertical segments lie on a `ground line,' a line with slope $-1$. It is
an open question to decide in polynomial time whether a given bipartite graph
$G$ with bipartition $A\cup B$ has a Stick representation where the vertices in
$A$ and $B$ correspond to horizontal and vertical segments, respectively. We
prove that $G$ has a Stick representation if and only if there are orderings of
$A$ and $B$ such that $G$'s bipartite adjacency matrix with rows $A$ and
columns $B$ excludes three small `forbidden' submatrices. This is similar to
characterizations for other classes of bipartite intersection graphs.
  We present an algorithm to test whether given orderings of $A$ and $B$ permit
a Stick representation respecting those orderings, and to find such a
representation if it exists. The algorithm runs in time linear in the size of
the adjacency matrix. For the case when only the ordering of $A$ is given, we
present an $O(|A|^3|B|^3)$-time algorithm. When neither ordering is given, we
present some partial results about graphs that are, or are not, Stick
representable.
