Как запретить matplotlib печатать текст в моем предварительном просмотре уценки, не блокируя график изображения - PullRequest
0 голосов
/ 15 апреля 2019

Фактически не меняя мой код, внезапно кусок кода python matplotlib из расширенного markdown-preview в коде Visual Studio помещает <!DOCTYPE svg PUBLIC “-//W3C//DTD SVG 1.1//EN” “http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd”> над изображением в предварительном просмотре.

минимальный пример, который также случается сбудьте реальным примером:

```python {cmd,matplotlib,hide,run_on_save}
import numpy as np
import matplotlib.pyplot as plt
import PIL.Image as img

outimg=img.new('RGB', (640,480),(73,109,137))
arrayimg=np.asarray(outimg)
plt.imshow(arrayimg)
plt.show()

Однако этот код не поможет, так как раньше не возникало проблем с точно таким же кодом.Выполнение этого в IDLE или в оболочке python не приводит к появлению этого текста.

Поскольку он работал, я установил julia, pyjulia, pycall, деинсталлированный conda (он все равно не работал с enda conda) и установилПилатекс и Чемпи.Ничего из этого не импортируется в файл.

Вот каков результат запуска чанка:

https://i.stack.imgur.com/Yb3jf.png

Если я сделаю отступ plt.show() под with HiddenPrints(): где hiddenprints:

import os, sys
class HiddenPrints:
def __enter__(self):
    self._original_stdout = sys.stdout
    sys.stdout = open(os.devnull, 'w')

def __exit__(self, exc_type, exc_val, exc_tb):
    sys.stdout.close()
    sys.stdout = self._original_stdout

Тогда я не получаю вывод текста, НО я тоже не получаю вывод изображения, и весь смысл использования этого чанка состоит в том, чтобы получить вывод изображения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...