Почему Matplotlib не отображает все черные линии на этом изображении в градациях серого? - PullRequest
0 голосов
/ 06 апреля 2020

У меня есть следующее изображение (размером 1151x781)

enter image description here

Если я попытаюсь построить это изображение с помощью matplotlib следующим образом

import matplotlib.pyplot as plt

img = plt.imread("this_image.png")
plt.figure(figsize=(10, 7))
plt.imshow(img, cmap="gray")

В результате получается следующее:

enter image description here

Это происходит, если я выполняю этот код, открывая оболочку Python из терминала или в ноутбук Юпитера. Добавление линии matplotlib.use('TkAgg') перед построением, похоже, не помогает.

Я на MacOS Catalina (10.15.4), и я попробовал это с Python 3.7.1 и Matplotlib 3.0.2.

Вы тоже испытываете то же самое? Какое решение?

Пожалуйста, не говорите мне, что решение состоит в том, чтобы изменить размер фигуры! Поскольку я знаю, что при изменении размера фигуры эта проблема может исчезнуть go или появятся новые черные линии. Конечно, я не хочу терять время, пытаясь использовать разные размеры, чтобы понять, какие из них получаются, и, очевидно, это решение непрактично и негибко.

1 Ответ

0 голосов
/ 06 апреля 2020

Изменение dpi фигуры:

img = plt.imread('this_image.png')
plt.figure(figsize=(10,7), dpi=300)
plt.imshow(img, cmap='gray')

Выход:

enter image description here

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