【发布时间】:2013-12-10 04:39:41
【问题描述】:
Python 的matplotlib 默认不生成 Retina 显示质量 LaTeX 文本。是否有生成 Retina 质量输出的设置或附加包?
【问题讨论】:
标签: python matplotlib retina-display
Python 的matplotlib 默认不生成 Retina 显示质量 LaTeX 文本。是否有生成 Retina 质量输出的设置或附加包?
【问题讨论】:
标签: python matplotlib retina-display
您是否使用'Agg' 模式(标准)来创建PNG 图形?
您可以使用 Matplot 库创建 SVG 图形,使用它具有更好的质量
matplotlib.use('svg')
【讨论】:
ipython --pylab 启动)。
text.dvipnghack : True。
text.dvipnghack 似乎没有任何作用。请注意,字体通常看起来不错,只是 LaTeX 没有,因为它似乎被渲染为位图(该分辨率是在 Retina 上看起来不错的一半)。
dvipnghack 的原因。这应该可以修复难看的文本。如果它仍然不起作用,我不知道还能做什么......您可以尝试将 LaTeX 设置为默认文本渲染器(text.usetex : True),看看这是否会影响正常的文本。 (我想是的..)也许检查您的 Tex 安装是否是最新的。
如果您查看texmanager.py,您会发现它通过调用dvipng 来生成png,并且系统调用dvipng 的函数具有dpi 的参数
在现有数字的每个数字基础上获得更高的分辨率TeX
plt.gcf().canvas.renderer.dpi = what_ever_retina_dpi_is
要在任何地方设置它,您应该能够设置 rcparam figure.dpi,这将在创建新渲染器时受到尊重。
我无法对此进行测试,因为我无法使用配备 Retina 显示屏的 Mac。
【讨论】:
~/.matplotlib/tex.cache