I don't know what about the plot you would like to improve, but this would put a +
in front of the positive tick marks and extend the ticks to the negative side of the axes
Plot[Round[n], {n, -3, 3}, AspectRatio -> Automatic,
Exclusions -> None, AxesLabel -> {Input, Output},
Ticks -> Function[{xmin, xmax},
Table[{i, Row[{NumberForm[i, NumberSigns -> {"-", "+"}], "Q"}], {.02, .02}},
{i, Floor[xmin], Ceiling[xmax]}]]
]

Slightly updated version in case you want +Q
instead of +1Q
Plot[Round[n], {n, -3, 3}, AspectRatio -> Automatic,
Exclusions -> None, AxesLabel -> {Input, Output},
Ticks -> Function[{xmin, xmax},
Table[{i,
Row[{Switch[i, 1, "+", -1, "-", _, NumberForm[i, NumberSigns -> {"-", "+"}]],
"Q"}],
{.02, .02}},
{i, Floor[xmin], Ceiling[xmax]}]
]
]

Final version incorporating the comment of the OP
Plot[Round[n], {n, -3, 3}, AspectRatio -> Automatic,
Exclusions -> None, AxesLabel -> {Input, Output},
Ticks -> Function[{xmin, xmax},
Table[{i,
Row[{
Switch[i, 1, "+", -1, "-", _, NumberForm[i, NumberSigns -> {"-", "+"}]],
"Q"}], {.02, .02}},
{i, Floor[xmin], Ceiling[xmax]}]],
AxesStyle -> With[{head = {Graphics[{Polygon[{{-1, 0.5`},
{0, 0}, {-1, -0.5`}}]}], 0.98`}},
Directive[Arrowheads[{{-0.03, 0, head}, {0.03, 1, head}}]]
]
]
