Белые линии в pcolor matplotlib

В некоторых просмотрщиках в формате pdf, таких как Предварительный просмотр на OSX, графики, выполненные с помощью matplotlib matplotlib, имеют белые линии (см. Изображение ниже). Как я могу избавиться от них?

Исходный код очень прост (выберите любые данные для x , y , z ):

 import matplotlib matplotlib.use("pdf") import matplotlib.pyplot as pl pl.figure() pl.pcolormesh(x,y,z,cmap="Blues",linewidth=0) pl.savefig("heatmap.pdf") 

введите описание изображения здесь

One Solution collect form web for “Белые линии в pcolor matplotlib”

Комментарии имеют хорошее решение, которое использует imshow . Когда imshow не подходит для входных данных (например, он не равномерно распределен), это, как правило, решает эту проблему,

 pcol = pl.pcolormesh(x,y,z,cmap="Blues",linewidth=0,) pcol.set_edgecolor('face') 

Если этот подход не приведет к сокращению строк достаточно, вы также можете попробовать следующее:

 pl.pcolormesh(x,y,z,cmap="Blues",linewidth=0,rasterized=True) 

В дополнение к сокращению линий между квадратами этот подход также имеет тенденцию к уменьшению размера файла, что иногда полезно. В этом случае вы можете настроить настройку dpi при сохранении (например, pl.savefig("heatmap.pdf", dpi=300) ), пока не получите что-то удовлетворительное.

  • Планирование кадров данных Pandas
  • График рассеяния со строковыми координатами X и Y
  • tkinter.TclError: не удалось подключиться к отображению "localhost: 18.0"
  • Как избавиться от линий сетки при планировании с помощью Seaborn + Pandas с secondary_y
  • Ошибка компиляции Matplotlib: TypeError: unorderable types: str () <int ()
  • Создание легенды в matplotlib после построения двух Pandas Series
  • Как построить 2 подзаголовка из разных функций в одном окне (рисунок)?
  • Как получить значения определенного частотного диапазона
  • Python - лучший язык программирования в мире.