python - 在python中包含带有特殊字符的图例标签上的变量

标签 python matplotlib legend

这是我的代码的一部分,我想在图例中添加一些变量:

c1 = raw_input("enter c1: ")
c2 = raw_input("c2: ")

mainax.plot(x, y, label=r"power law, $n$ =" + c1 + "$\times$ 10$^" + c2 + "cm$^{-3}$")

如果我删除变量,它应该相当于以下内容:

mainax.plot(x, y, label=r"power law, $n$ = 2.1 $\times$ 10$^{12}$ cm$^{-3}$")

我最终想要的应该是这样的:

enter image description here

最佳答案

您可以使用.format字符串格式选项来获取所需的标签。在这里,您必须确保您有正确数量的大括号,因为 .format 占用了其中之一:

c1 = "2.1"
c2 = "12"
label = r'power law, $n$ = {} $\times$ 10$^{{{}}}$ cm$^{{-3}}$'.format(c1, c2)

plt.plot([1,2], [1,2], label=label)
plt.legend()

plt.show()

enter image description here

关于python - 在python中包含带有特殊字符的图例标签上的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54785758/

相关文章:

Python:使用手动分配的图例绘制 Pandas DataFrame

python - 在 iPython 笔记本中向内联轴添加 matplotlib 补丁两次会导致偏移

函数内外的Python全局列表修改

python - 如何使用 itertools 最小化大长度列表的迭代时间?

Excel:图表和图例中系列的 Z 顺序

matlab - 如何更改图例的顺序

python - 将收到的 HTML 作为字符串写入浏览器

python - 使用 matplotlib 和 opencv2 在图像上绘图,更新图像?

python - 多个循环创建绘图的问题,出现错误

python - 绘制数据帧时出现内存错误(matplotlib)