0

self.ax.imshow(arr,cmap=plt.cm.Greys_r, interpolation = 'none')現時点ですべて同じ色を使用してmatplotlibにプロットした行列があります。ただし、マトリックスにプロットされているものと同じサイズの別の配列があります。配列には0から1までの数値が含まれます。この配列の各数値は、行列のプロットに対応します。0から1までの数字の配列が行列のプロットの色に対応するようにするにはどうすればよいですか?

numberlist = [(1,34),(2,35),(5,78) etc]私は310までの配列を持っています

data = np.array(number list)
N=data.max()+5
arr=np.ones((N,N),dtype='bool')
arr[data[:,1],data[:,0]]=0

その後、上記のimshow

4

1 に答える 1

0

あなたの編集に基づいて、私はあなたがこれを意味すると信じています:

  • booleanポイントをプロットする必要があるかどうかを示す配列が1つあります。
  • floatプロットされている場合、そのポイントがどの色であるかを示す配列があります。

arr_boolこれらの配列を:とと呼びたいarr_valです。

それらを掛け合わせると、フロートが得られますTrueが、がゼロの場合Falseは、それらの製品を使用して色を付けることができます。

N = 10
arr_bool = np.random.random_integers(0,1,(N,N))
arr_val  = np.random.rand(N,N)
imshow(arr_bool*arr_val, cmap = cm.spectral_r, interpolation = 'nearest')

したがって、プロットするだけで次のarr_boolようになります ブール配列 。色だけをプロットする場合、またはarr_val値の配列 それらを組み合わせるとarr_bool * arr_val色付きの配列

于 2013-03-11T16:53:07.880 に答える