Вы можете указать количество записей в палитре по умолчанию, используя метод ListedColormap
, как вы думали, просто установите необязательный аргумент N = 2
. Кроме того, определите минимальные и максимальные значения для ваших данных в методе imshow
с помощью vmin
и vmax
.
import matplotlib.pyplot as plt
from matplotlib.colors import ListedColormap
import numpy as np
# Random matrix
data_ones = np.random.randint(1, 2, size=(8, 8))
data_both = np.random.randint(0, 2, size=(8, 8))
# Define colormap
cmapmine = ListedColormap(['b', 'w'], N=2)
# Plot matrix
fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.imshow(data_ones, cmap=cmapmine, vmin=0, vmax=1)
ax1.set_title('Ones')
ax2.imshow(data_both, cmap=cmapmine, vmin=0, vmax=1)
ax2.set_title('Zeros and Ones')
plt.show()
Какие графики: