Я пытаюсь использовать пару цветовых карт из matplotlib на картинке и сохранить их потом. Я перепробовал много вещей, но я не могу просто сохранить его без смещения изображения на 1 или 2 пикселя вверх. Также я чувствую, что в пропорциях картинки есть небольшие ошибки.
Изображение размером 64х64 пикселей.
Я попытался поэкспериментировать с dpi и установил dpi на 96 (мой экран dpi), 100 и 80. Ничего из этого не сработало.
Я получил 0,84, экспериментируя, чтобы получить 64x64 пикселей.
cmappsL1 = ["Paired", "Paired_r", "Spectral", "Spectral_r", "flag", "flag_r", "tab10"]
image = "example.png"
imgpath = "C:\\Users\\"
for i in range(len(cmapps)):
fig = plt.figure(figsize=(0.84, 0.84)) #needed to get rid of padding
ax = fig.add_subplot(1, 1, 1) #needed to get rid of pyplot padding
plt.imshow(image, cmap=str(cmapps[i])) #use colormap
plt.xticks([])#get rid of scale
plt.yticks([])#get rid of scale
ax.axes.get_xaxis().set_visible(False)#get rid of axis
ax.axes.get_yaxis().set_visible(False)#get rid of axis
ax.set_frame_on(False)#get rid of frame
plt.savefig(imgpath+cmapps[i]+'.png', bbox_inches = 'tight', pad_inches = 0)
plt.close(fig)
Сгенерированные изображения немного выше, чем исходное изображение, а также немного возмущены. Как сохранить изображение с цветовой картой, чтобы оно имело точные свойства как оригинал, за исключением использования цветовой карты?