1000个同心正方形逐渐缩小,10种颜色,每种颜色100个正方形,最外层变长为1000

1000个同心正方形逐渐缩小,10种颜色,每种颜色100个正方形,最外层变长为1000

import matplotlib.pyplot as plt

# 生成颜色列表
colors = ['r', 'g', 'b', 'c', 'm', 'y', 'k', 'w', 'orange', 'purple']

# 创建一个图形窗口
fig, ax = plt.subplots()

# 循环遍历所有正方形
for i in range(1000, 0, -100):
    # 计算正方形的左下角坐标和边长
    x = (1000 - i) / 2
    y = (1000 - i) / 2
    l = i

    # 计算正方形的颜色索引
    color_index = (1000 - i) // 100

    # 绘制正方形
    rect = plt.Rectangle((x, y), l, l, edgecolor='black', facecolor=colors[color_index])
    ax.add_patch(rect)

# 调整坐标轴范围
ax.set_xlim(0, 1000)
ax.set_ylim(0, 1000)

# 显示图形
plt.show()