Python是一种流行的编程语言,以其易学易用和功能丰富而著称。其中一个强大的特性是能够使用Python来绘制颜色渐变图像。
import matplotlib.pyplot as plt import numpy as np x, y = np.meshgrid(np.linspace(-1, 1, 100), np.linspace(-1, 1, 100)) distance = np.sqrt(x ** 2 + y ** 2) gradient = np.linspace(0, 1, 256) colors = plt.cm.viridis(gradient) fig, ax = plt.subplots() circ = plt.Circle((0, 0), radius=1, color='black', fill=False) ax.add_patch(circ) ax.set_aspect('equal') ax.axis('off') for i in range(256): mask = np.logical_and(distance >= i / 100.0, distance< (i + 1) / 100.0) ax.contourf(x, y, mask, colors=[colors[i]], alpha=0.5) plt.show()
这段代码使用了numpy和matplotlib.pyplot两个库。首先创建了一个网格,用来表示坐标系中的点。然后计算每个点到坐标原点的距离,并通过linspace函数生成了一个渐进颜色数组。
接着创建了一个空白的坐标系,并添加了一个黑色圆形,形成了一个“蒙板”。使用循环遍历渐进颜色数组,对每一个颜色生成一个掩模(mask),用于指定该颜色应该出现的区域。最后使用contourf函数将掩模填充到坐标系中,形成了颜色渐进图像。
通过更改gradient数组和plt.cm的参数,可以生成不同的颜色和形状的渐进图像。