以下是我的代码:
mpl.rcParams.update({'font.size': 18, 'font.weight': 'bold'})
mpl.rc('text', usetex=True)
plt.figure(figsize=(8, 7))
some data process
plot the data use pyplot.plot(x, y)
plt.legend(handles=[legend1,legend2,legend3,legend4], loc=8, numpoints=1)
plt.xlabel(r'$k_{s}$')
plt.ylabel(r'$P(k_{s})$')
plt.xlim(0.95, 100)
plt.tight_layout()
plt.savefig('fig3.eps', div=300, format='eps')
上面的代码会引发 TypeError:无法转换'字节'调用savefig方法时,对象为str 。预期的数字可以在我的Jupyter笔记本中显示,但并不能真正保存eps文件。但是,其他格式如png,jpeg和pdf似乎也有效。
我尝试删除mpl.rc('text', usetex=True)
并删除所有LaTex代码,然后异常消失。
我的matplotlib版本是:1.5.1,python版本是3.5
我无法在google或matplotlib官方文档中找到任何有用的信息。请帮帮忙。谢谢你们所有人!
更新 我写了一个简单的例子,事情没有改变。
%matplotlib inline
import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np
mpl.rcParams.update({'font.size': 18, 'font.weight': 'bold'})
mpl.rc('text', usetex=True)
x = np.arange(10)
y = x
plt.plot(x, y)
plt.xlabel(r'$k_{s}$', fontweight='bold')
plt.ylabel(r'$P(k_{s})$', fontweight='bold')
plt.savefig('figtest.eps',format='eps', dpi=300)
预期结果显示在我的jupyter笔记本中,但它没有将无花果保存到我的磁盘上。