首页 > 解决方案 > 如何创建用于在 Python 中显示颜色的类 Canvas?

问题描述

我想创建一个名为Canvas在给定像素中显示颜色的类。

例如,

purple = np.array([0.5, 0.0, 0.5])
C = Canvas(purple, 2001) # 2001 x 2001 pixels
C.show()

显示一个紫色方块,类似于:

在此处输入图像描述

__init__()方法应采用除和之外self的两个参数。backgroundn

预计将background是一个长度为 3 的一维 Numpy 数组,表示 RGB 颜色。例如,black = np.array([0,0,0])purple = np.array([0.5, 0.5, 0])

此外,该__init__方法应该创建一个实例变量self.im,一个形状为 Numpy 的数组(n, n, 3)。应该构造这个数组,以便对于和self.im[i,j] == background的每个值。ij

到目前为止,这是我的代码:

class Canvas:
    def __init__(self,background,n,x,y):
        self.background = background
        self.n = n
        self.x = x
        self.y = y
        
        self.im = np.zeros((n,n,3))
        self.im[x,y] = background
        
    def show():
        plot.imshow(background)

我不知道如何从这个开始。使用plot.imshow函数如何做到这一点?

标签: pythonnumpyoop

解决方案


推荐阅读