Я пытаюсь наложить два прозрачных изображения с помощью matplotlib и сохранить результат, но результат выглядит по-разному в зависимости от типа файла. В частности, это гораздо более размыто при сохранении в svg.
Вот пример. В этом случае я мог бы просто добавить два изображения перед их отображением, но это всего лишь простой пример. На самом деле то, что я пытаюсь сделать, сложнее (изображения разных размеров с разными цветовыми картами), поэтому их нужно рисовать отдельно.
Пример кода:
f, ax = plt.subplots(figsize=(2,2))
ax.imshow(np.eye(3), alpha=.5)
ax.imshow(np.eye(3)[::-1], alpha=.5)
f.savefig('example.png')
f.savefig('example.svg')
Файл png выглядит точно так же, как на экране, но файл svg выглядит размытым. Я хотел бы знать, как сохранить в формате svg без эффекта размытия (т.е. он должен выглядеть так, как на экране).
В качестве дополнительного вопроса, почему график png выглядит по-разному в зависимости от порядка, в котором я рисую прозрачные изображения? Второе изображение всегда выглядит сильнее. Интересно, что в svg оба одинаково размыты.
Пример сохранен как png:
Пример сохранен как svg:
версия matplotlib: 3.1.3 версия python: 3.7.7
Спасибо за любые советы!