PySlot imshow не уважает bbox_inches = "туго" при сохранении - PullRequest
1 голос
/ 19 июня 2019

Как мне создать фигуру imshow () без отступов или осей?

Кажется, у меня есть обычная проблема, на которую здесь уже давали ответ, но ни одно из решений не помогло мне. У меня есть фигура, сгенерированная PyPlot под Юлией, которая, по-видимому, является интерфейсом для matplotlib.pyplot, и «должен» вести себя соответственно. Проблема в том, что мне удается в Jupyter иметь фигуру без белых отступов или рамок. Но когда я сохраняю, он настаивает на размещении ограничивающего прямоугольника.

Я пробовал решения в этой теме , а также в этой другой теме . Никто не работал. Вот мой код:

blabla=randn(40,500)
tuabuela=PyPlot.figure(frameon=false)
gca().set_axis_off()
subplots_adjust(top = 1, bottom = 0, right = 1, left = 0, 
            hspace = 0, wspace = 0)

tu=imshow(blabla, interpolation="gaussian")
margins(0,0)
savefig("outname.png", bbox_inches="tight", pad_inches=0.01, frameon=false, dpi=90)

Код дает хорошее изображение на ноутбуке Jupyter, но не при сохранении. frameon=false, кажется, только меняет рамку с белого на прозрачную, а не устраняет ее.

Мой matplotlib - это 2.2.2, Python 3.6 и Julia 1.0.3.

Изображение, отображаемое в блокноте (которое, как я обнаружил, такой же, как сохраненный, но прозрачная рамка была обманчива):

enter image description here

Я прекрасно понимаю, что это «повторяющийся вопрос», но мешанина разных ответов и их нерабочий статус мне кажется, что библиотека matplotlib почти сделала это в направлении изменения функции на ошибку ....

...