我刚刚升级到了IPython Notebook 3.0版本,它禁用了seaborn的格式设置。这是一些重现问题的示例代码:
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline
data = np.random.randn(100)
fig,ax = plt.subplots(figsize = (11,8.5))
ax.plot(data)
这段代码在IPython Notebook V2.4.1中运行良好(请参见http://nbviewer.ipython.org/gist/anonymous/71733c24a68ee464ca40), 但在IPython Notebook v3.0中,坐标轴变得不可见(请参见http://nbviewer.ipython.org/gist/anonymous/7525146b07709206908c)。
奇怪的是,在V3中,当我交换seaborn导入和matplotlib inline命令的顺序时,绘图第一次正常渲染,然后如果我重新运行,坐标轴和网格线就会消失。所以似乎与inline命令禁用seaborn属性有关。
除了第一次导入后不重新执行导入之外,还有其他解决方法吗?