Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 如何消除这些工件(带LaTeX的matplotlib)_Python 3.x_Matplotlib_Latex - Fatal编程技术网

Python 3.x 如何消除这些工件(带LaTeX的matplotlib)

Python 3.x 如何消除这些工件(带LaTeX的matplotlib),python-3.x,matplotlib,latex,Python 3.x,Matplotlib,Latex,当运行下面的最小示例时,我在LaTeX渲染表达式中得到奇怪的J形工件 import matplotlib.pyplot as plt from matplotlib import rc rc('font',**{'family':'serif','serif':['Times']}) rc('text', usetex=True) rc(('xtick','ytick','axes'), labelsize=12.0) rc(('legend'), fontsize=8.0) fig=plt

当运行下面的最小示例时,我在LaTeX渲染表达式中得到奇怪的J形工件

import matplotlib.pyplot as plt
from matplotlib import rc

rc('font',**{'family':'serif','serif':['Times']})
rc('text', usetex=True)
rc(('xtick','ytick','axes'), labelsize=12.0)
rc(('legend'), fontsize=8.0)

fig=plt.figure(figsize=(4,3))
ax1 = fig.add_subplot(111)

ax1.plot([0,1],[0,1],label=r'$\propto x^1$')
ax1.set_xlabel(r'$x$')
ax1.set_ylabel(r'$\sum_i \chi_i$')

ax1.legend()

fig.tight_layout()
plt.savefig('minimal.pdf')
输出:


我怎样才能摆脱它们呢?

正如乔·金顿(Joe Kington)在评论中指出的那样,摆脱这些艺术品的方法是使用具有正确符号的字体


在最简单的示例中,删除
rc('font',**{'family':'serif','serif':['Times']})
修复了问题。

这可能是因为您的系统中没有类似于
Times
的字体具有适当的符号。如果删除设置字体系列的第一行
rc
,会发生什么情况?(无论如何,你的例子在我的系统上运行得非常好。我猜
'serif':['Times']
会让你得到Times New Roman,它没有正确的符号。)