The difference in the fonts can be caused by incorrect parameter setting out pictures with matplotlib or wrong its integration into the final document.
I think problem in text.latex.preamble: usepackage{lmodern}. This thing works very badly and even developers do not guarantee its workability, how you can find here. In my case it did not work at all.
Minimal differences in font associated with font family. For fix this u need: 'font.family' : 'lmodern' in rc.
Other options and more detailed settings can be found here.
To suppress this problem, I used a slightly different method - direct. plt.rcParams['text.latex.preamble']=[r"usepackage{lmodern}"].
It is not strange, but it worked. Further information can be found at the link above.
To prevent these effects suggest taking a look at this code:
import matplotlib.pyplot as plt
#Direct input
plt.rcParams['text.latex.preamble']=[r"usepackage{lmodern}"]
#Options
params = {'text.usetex' : True,
'font.size' : 11,
'font.family' : 'lmodern',
'text.latex.unicode': True,
}
plt.rcParams.update(params)
fig = plt.figure()
#You must select the correct size of the plot in advance
fig.set_size_inches(3.54,3.54)
plt.plot([1,2,3,4])
plt.xlabel("Excitation-Energy")
plt.ylabel("Intensit?t")
plt.savefig("graph.pdf",
#This is simple recomendation for publication plots
dpi=1000,
# Plot will be occupy a maximum of available space
bbox_inches='tight',
)
And finally move on to the latex:
documentclass[11pt]{scrartcl}
usepackage[T1]{fontenc}
usepackage[utf8]{inputenc}
usepackage{lmodern}
usepackage{graphicx}
egin{document}
egin{figure}
egin{center}
includegraphics{./graph}
caption{Excitation-Energy}
label{fig:graph}
end{center}
end{figure}
end{document}
Results
As can be seen from a comparison of two fonts - differences do not exist
(1 - MatPlotlib, 2 - pdfLaTeX)
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…