我试图在matplotlib中使用自定义LaTeX前导码,但它会引发
ValueError:密钥text.latex.preamble:无法将['\\usepackage{siunitx}'…]转换为str
出于某种原因\
被转换为\\
,但我不明白为什么。我使用的是Pythonv.3.11.5和Matplotlibv.3.7.2。
这是MWE(灵感来自这个帖子):
将matplotlib.pyplot导入为plt从matplotlib导入rcParamsrcParams['text.usetex']=真rcParams['text.lext.pramble']=[r“\usepackage{siunitx}”,#我需要竖直\微符号,但您需要。。。r'\sisetup{detect-all}',#。。。这将强制siunitx实际使用您的字体r“\usepackage{helvet}”,#在此处设置普通字体r“\usepackage{sansmath}”,#加载sansmath,以便math->helvetr'\sansmash'#<-棘手!--必须告诉tex使用!]图,ax=plt.subplots()图show()