C#

    using System;
    using System.Drawing;
    using System.Drawing.Imaging;

    class Program
    {
        static void Main()
        {
            int width = 1000;
            int height = 1000;

            using (Bitmap bmp = new Bitmap(width, height))
            using (Graphics g = Graphics.FromImage(bmp))
            {
                g.Clear(Color.White);

                int cell = 100;

                // ---------------------------
                // 100pxチェッカーパターン
                // ---------------------------
                for (int y = 0; y < height; y += cell)
                {
                    for (int x = 0; x < width; x += cell)
                    {
                        bool dark = ((x / cell) + (y / cell)) % 2 == 0;

                        using (Brush b = new SolidBrush(
                            dark ? Color.FromArgb(245, 245, 245) :
                                Color.FromArgb(220, 220, 220)))
                        {
                            g.FillRectangle(b, x, y, cell, cell);
                        }
                    }
                }

                using (Pen pen1 = new Pen(Color.FromArgb(230,230,230),1))
                using (Pen pen10 = new Pen(Color.FromArgb(180,180,180),1))
                using (Pen pen100 = new Pen(Color.Red,2))
                using (Font font = new Font("Arial", 10))
                {
                    // ---------------------------
                    // 縦線
                    // ---------------------------
                    for (int x = 0; x < width; x++)
                    {
                        if (x % 100 == 0)
                            g.DrawLine(pen100, x, 0, x, height);
                        else if (x % 10 == 0)
                            g.DrawLine(pen10, x, 0, x, height);
                        else
                            g.DrawLine(pen1, x, 0, x, height);
                    }

                    // ---------------------------
                    // 横線
                    // ---------------------------
                    for (int y = 0; y < height; y++)
                    {
                        if (y % 100 == 0)
                            g.DrawLine(pen100, 0, y, width, y);
                        else if (y % 10 == 0)
                            g.DrawLine(pen10, 0, y, width, y);
                        else
                            g.DrawLine(pen1, 0, y, width, y);
                    }

                    // ---------------------------
                    // 座標表示
                    // ---------------------------
                    for (int x = 0; x < width; x += 100)
                    {
                        g.DrawString($"x={x}", font, Brushes.Blue, x + 3, 3);
                    }

                    for (int y = 0; y < height; y += 100)
                    {
                        g.DrawString($"y={y}", font, Brushes.Green, 3, y + 3);
                    }

                    // ---------------------------
                    // 交点マーカー
                    // ---------------------------
                    for (int y = 0; y < height; y += 100)
                    {
                        for (int x = 0; x < width; x += 100)
                        {
                            g.FillEllipse(Brushes.Red, x - 2, y - 2, 4, 4);
                        }
                    }
                }

                bmp.Save("debug_grid_1000.png", ImageFormat.Png);
            }

            Console.WriteLine("デバッグ画像生成完了");
        }
    }