Matplotlib绘图中如何将多行图例标签合并为单行?
解决Matplotlib图例标签行合并问题
要让图例中公式和fun1的内容显示在同一行,核心是消除两者之间的换行分隔,具体分两种情况处理:
情况1:
fun1本身不含换行符
直接用f-string将公式与fun1拼接在同一行,保留第一行的换行即可:plt.plot(Tem, fitK[0] * Tem + fitK[1], label=f'fitted kinetic energy \n $E_{{k}}^{{fitted}}= {fun1}$', color='red')注:f-string中LaTeX语法的花括号需要用
{{}}转义,避免被Python解析为变量占位符。情况2:
fun1包含换行符
先清除fun1里的换行,再和公式拼接:# 去除fun1中的换行符 clean_fun1 = fun1.replace('\n', '') plt.plot(Tem, fitK[0] * Tem + fitK[1], label=f'fitted kinetic energy \n $E_{{k}}^{{fitted}}= {clean_fun1}$', color='red')
修改后,图例标签会显示为两行:第一行是fitted kinetic energy,第二行是公式加fun1的内容,实现了原第二、第三行的合并。
内容的提问来源于stack exchange,提问作者DCInb
相关产品推荐
相关产品推荐

