В этом коде нет ничего плохого. Для этого фрагмента кода, конечно, вы видите желтый прямоугольник, так как X расположены на расстоянии всего 1 пиксель.
Если вы предоставите drawString с достаточными координатами, вы должны увидеть ваш X в этих координатах. Итак, если вы поместите переменные col и row в ваш цикл, как вы объяснили, вы должны увидеть несколько X в нескольких строках / столбцах. (Но не забудьте изменить массив плат в этом случае, так как возможно, что цикл вообще не будет выполняться, если вы расположите их слишком далеко друг от друга).
Может быть, вы можете сказать нам, откуда вы вызываете этот код? Это выполняется в методе paintComponent или вы вызываете его вручную из какого-то другого потока?