如何在matplotlib绘图时混合使用变量与字符串设置图例标签
问题原因
你当前给label参数传入的是('ratio =',i)格式的元组,matplotlib渲染图例时会完整输出元组的结构,因此会自带括号、逗号等多余字符。
解决方法
你只需要把字符串和变量拼接成单个字符串传给label即可,以下是几种常用实现方式:
- 方法1:f-string(Python 3.6及以上版本推荐,语法最简洁)
修改后代码:
plt.plot(wlist, elist, label=f"Ratio = {i}")
- 方法2:
str.format()方法(兼容所有Python3版本)
修改后代码:
plt.plot(wlist, elist, label="Ratio = {}".format(i))
- 方法3:普通字符串拼接
修改后代码:
plt.plot(wlist, elist, label="Ratio = " + str(i))
三种方法都可以让图例最终显示为Ratio = 迭代次数的格式,没有多余符号。
内容的提问来源于stack exchange,提问作者Lvpec
相关产品推荐
相关产品推荐

