Изучение нескольких методов рисования матрицы черных квадратов и белых кругов: подробное руководство

Введение

Рисование матриц из черных квадратов и белых кругов может стать увлекательным визуальным упражнением в программировании. В этой статье мы рассмотрим несколько методов достижения этого эффекта с помощью Python. Мы предоставим примеры кода для каждого метода, что позволит вам поэкспериментировать и выбрать тот, который лучше всего соответствует вашим потребностям. Давайте погрузимся!

Метод 1: использование символов ASCII

Один простой подход — использовать символы ASCII для обозначения квадратов и кругов. Вот пример:

def draw_matrix_ascii(matrix):
    for row in matrix:
        for element in row:
            if element == 1:
                print("■", end=" ")
            else:
                print("●", end=" ")
        print()

Метод 2: использование Matplotlib

Matplotlib — популярная библиотека визуализации данных, которая поможет нам создать матрицу с использованием квадратов и кругов. Вот пример:

import matplotlib.pyplot as plt
import numpy as np
def draw_matrix_matplotlib(matrix):
    fig, ax = plt.subplots()
    ax.imshow(matrix, cmap='binary')
    # Draw white circles
    for i in range(matrix.shape[0]):
        for j in range(matrix.shape[1]):
            if matrix[i, j] == 0:
                circle = plt.Circle((j, i), 0.4, color='white')
                ax.add_artist(circle)
    ax.set_aspect('equal')
    ax.axis('off')
    plt.show()

Метод 3: использование Pygame

Pygame — мощная библиотека для создания игр и графических приложений. Мы можем использовать его возможности для рисования матрицы. Вот пример:

import pygame
def draw_matrix_pygame(matrix):
    size = matrix.shape[0] * 40, matrix.shape[1] * 40
    screen = pygame.display.set_mode(size)
    # Draw black squares
    for i in range(matrix.shape[0]):
        for j in range(matrix.shape[1]):
            if matrix[i, j] == 1:
                pygame.draw.rect(screen, (0, 0, 0), (j * 40, i * 40, 40, 40))
    # Draw white circles
    for i in range(matrix.shape[0]):
        for j in range(matrix.shape[1]):
            if matrix[i, j] == 0:
                pygame.draw.circle(screen, (255, 255, 255), (j * 40 + 20, i * 40 + 20), 20)
    pygame.display.flip()
    running = True
    while running:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                running = False
    pygame.quit()

Заключение

В этой статье мы рассмотрели три различных метода рисования матрицы из черных квадратов и белых кругов с помощью Python. Мы рассмотрели использование символов ASCII, Matplotlib и Pygame. Каждый метод имеет свои преимущества, поэтому выберите тот, который лучше всего соответствует требованиям вашего проекта. Получайте удовольствие, экспериментируя с этими техниками и создавая потрясающие визуализации!