ListDensityPlot
will deal with data in that format. An interpolation order of zero will reproduce the "blocky" ArrayPlot
output as well.
data = Flatten[Table[{x, y, Sin[x] + Sin[y]}, {x, -3 Pi, 3 Pi}, {y, -3 Pi, 3 Pi}], 1];
ListDensityPlot[data, InterpolationOrder -> 0]
Thank you for posting your data. Unfortunately, the data you have is not regularly sampled, hence the irregular shapes in the ListDensityPlot. However, you can interpolate and resample if you want "square" blocks. Below, data
is your data from pastebin.
if = Interpolation[data];
ListDensityPlot[
Flatten[Table[{x, y, if[x, y]}, {x, 1, 23, 2}, {y, 1, 14}], 1],
InterpolationOrder -> 0
]