我希望能够保存Matplotlib图并将它们直接作为矢量图形添加到Microsoft Word文档中。但是,Word和Matplotlib支持的唯一格式都是.eps,如果尝试,Word中的轴文本完全缺失。我会告诉你:在导出.eps文件时转换Matplotlib中的文本
这里有一个最小的工作示例脚本:
import matplotlib.pyplot as plt
import numpy as np
axes = plt.gca()
data = np.random.random((2, 100))
axes.plot(data[0, :], data[1, :])
- Here's the image I get,如果我使用数字工具栏
- Here's the image I get,如果我救的情节随着剧情保存为巴纽。 eps并将其插入Word中。
显然,Matplotlib在.eps文件中保存文本的方式与Word从.eps文件中读取文本的方式不兼容。导出的.eps文件在PS_View中看起来很好。
我能想到的两种解决方法,但我不知道如何来实现,或者如果它在Matplotlib是在所有可能的:
- Vectorise的文本,以便它被嵌入的路径。 Matplotlib的SVG后端通过将rcParam'svg.fonttype'设置为'path'来支持这一点,但似乎ps后端并没有直接支持它。这将是理想的解决方法。有没有办法做到这一点?
- Rasterise only导出为.eps时的文本。这将是一个不太理想的解决方法。这可以做到吗?
我刚刚尝试在Mac上嵌入最新的Microsoft Word(2016)中的'.eps'文件,现在它似乎正确显示文本。 – mfitzp
感谢您的测试,@ mfitzp!自从发布这个问题我的公司已经从Word 2010升级到Word 2013.我决定再试一次,但问题仍然存在。无论是在Word 2016中修复问题,还是Mac版本的Word都更好。尽管如此,我关于解决方法(非特定于平台的问题)的问题依然存在。 –
我可以证实它至少在Windows上也不适用于Word 2013(不幸的是,2016年不能测试)。 – mfitzp