2016-03-24 3 views
2

Я хотел бы построить массив NumPy, используя imshow в matplotlib и сохранить его как изображение в формате JPEG. Однако я не могу удалить поля/прокладки/границы с изображения.Удалить поля из рисунка matplotlib

Мой код:

plt.imshow(np.arange(20).reshape(5,4)) ; 
plt.axis('off') 
plt.savefig('test.jpg', bbox_inches='tight', pad_inches=0, facecolor='black') 

Я выполнил все рекомендации, которые я мог бы найти здесь Stackoverflow, но ни один из них не будет способствовать удаления неровных белых границ (я сделал их черными на этом рисунке) показано ниже:

enter image description here

+0

ответ # 1 решит вашу проблему? – welch

ответ

0

настройки pad_inches = -1 решить это для меня (сохранение в формате PNG).

Я подозреваю, что pad_inches = 0 толкуется как "falsey" и игнорировали

+0

К сожалению, это также удаляет части изображения. –

0

Как это было описано в этом ответе: https://stackoverflow.com/a/26610602/265289, важно также называют:

fig.axes.get_xaxis().set_visible(False) 
fig.axes.get_yaxis().set_visible(False) 

рядом pad_inches=0. Это удаляет дополнительное пространство слева и внизу изображения.

Смежные вопросы