Код: Выделить всё
import matplotlib.pyplot as plt
import numpy as np
import os
from mpl_toolkits.axes_grid1.inset_locator import inset_axes
fig, ax = plt.subplots()
# create random image
image = np.arange(100).reshape((10,10))
xaxis = np.arange(10)
yaxis = np.arange(100)[::10]
im = ax.pcolormesh(xaxis, yaxis, image, shading='auto', rasterized=True)
axins = inset_axes(ax,
width=0.06,
height='100%',
loc='center right',
borderpad=-0.75
)
cbar = fig.colorbar(im, cax=axins, orientation='vertical')
filename = 'test.pdf'
fig.savefig(filename,
dpi=300,
bbox_inches='tight')
Эта проблема не возникает, если я удалю ключевое слово dpi=300 в fig.savefig() (хотя при большом увеличении наблюдается минимальное смещение), или если я удалю ключевое слово bbox_inches='tight' в fig.savefig() или удалю rasterized=True в ax.pcolormesh() или не добавляйте цветовую панель с помощью inset_axes().
Моя версия matplotlib — 3.9.2.
Любая помощь приветствуется!
Подробнее здесь: https://stackoverflow.com/questions/798 ... t-in-a-pdf
Мобильная версия