我希望能够将Matplotlib绘制的图形保存为矢量图,并直接添加到Microsoft Word文档中。然而,Word和Matplotlib都仅支持.eps格式,如果我尝试这样做,Word中的坐标轴文本将完全丢失。我来给你展示一下:
这是一个最小工作示例脚本:
import matplotlib.pyplot as plt
import numpy as np
axes = plt.gca()
data = np.random.random((2, 100))
axes.plot(data[0, :], data[1, :])
显然,Matplotlib将文本保存在.eps文件中的方式与Word从.eps文件读取文本的方式不兼容。导出的.eps文件在PS_View中看起来很好。
我能想到两种解决方法,但我不知道如何实现它们,也不知道在Matplotlib中是否可以实现:
- 将文本向量化,使其嵌入为路径。Matplotlib的SVG后端支持此操作,只需将rcParam“svg.fonttype”设置为“path”,但似乎并不直接支持ps后端。这将是理想的解决方法。有没有办法做到这一点?
- 仅在导出为.eps时栅格化文本。这将是一个较不理想的解决方法。这可以做到吗?
savefig()
吗? - wesanyer.svg
格式,然后使用一个叫做Inkscape的免费软件将其转换为.emf
格式。 - sebacastroh