如何设置 ipython matplotlib/pylab 的字体?
how to set font for ipython matplotlib/pylab?
我通过 ~/.matplotlib/matplotlibrc
将 matplotlib 的字体设置为 ttf。当我 运行:
$ python myplot.py
它使用了正确的字体。但如果我这样做:
$ ipython --pylab
Python 2.7.8 |蟒蛇 2.1.0 (x86_64)| (默认,2014 年 8 月 21 日,15:21:46)
键入 "copyright"、"credits" 或 "license" 以获取更多信息。
IPython 2.2.0 -- An enhanced Interactive Python.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://binstar.org
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
In [1]: %run myplot
它没有使用字体。我在 Mac OS X 上使用 Anaconda Python。我的 rcParams
没有被读取。 ipython(使用 pylab 选项)是否使用不同的配置?如何设置我的 matplotlib 默认字体?
更加混乱,如果我在 ipython 中使用 plt.show()
,它默认使用一种字体,但如果我从 ipython 中使用 plt.savefig()
,它使用另一个。
据我所知,在绘图之前在代码本身中设置 rcParams 是最好的方法。 IPython 用它的内联做了很多魔术,这往往很奇怪。 IPython 可能会用自己的默认值践踏您的 rcParams,如果您在脚本中设置它们,解释器将再次读取它们。
from matplotlib import rcParams
rcParams['font.family'] = 'sans-serif'
rcParams['font.sans-serif'] = ['Bitstream Vera Sans']
rcParams['font.serif'] = ['Bitstream Vera Sans']
rcParams["font.size"] = "40"
在脚本顶部试试这个并报告?
此外,您可以尝试 运行 您的脚本为 ipython script.py --pylab
。问题也可能是您正在 IPython 之外更新您的脚本,它可能仍然是 运行ning 以前版本的字节编译代码。 (虽然机会不大)
我通过 ~/.matplotlib/matplotlibrc
将 matplotlib 的字体设置为 ttf。当我 运行:
$ python myplot.py
它使用了正确的字体。但如果我这样做:
$ ipython --pylab Python 2.7.8 |蟒蛇 2.1.0 (x86_64)| (默认,2014 年 8 月 21 日,15:21:46) 键入 "copyright"、"credits" 或 "license" 以获取更多信息。
IPython 2.2.0 -- An enhanced Interactive Python.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://binstar.org
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
In [1]: %run myplot
它没有使用字体。我在 Mac OS X 上使用 Anaconda Python。我的 rcParams
没有被读取。 ipython(使用 pylab 选项)是否使用不同的配置?如何设置我的 matplotlib 默认字体?
更加混乱,如果我在 ipython 中使用 plt.show()
,它默认使用一种字体,但如果我从 ipython 中使用 plt.savefig()
,它使用另一个。
据我所知,在绘图之前在代码本身中设置 rcParams 是最好的方法。 IPython 用它的内联做了很多魔术,这往往很奇怪。 IPython 可能会用自己的默认值践踏您的 rcParams,如果您在脚本中设置它们,解释器将再次读取它们。
from matplotlib import rcParams
rcParams['font.family'] = 'sans-serif'
rcParams['font.sans-serif'] = ['Bitstream Vera Sans']
rcParams['font.serif'] = ['Bitstream Vera Sans']
rcParams["font.size"] = "40"
在脚本顶部试试这个并报告?
此外,您可以尝试 运行 您的脚本为 ipython script.py --pylab
。问题也可能是您正在 IPython 之外更新您的脚本,它可能仍然是 运行ning 以前版本的字节编译代码。 (虽然机会不大)