我正在为使用matplotlib制作的图形添加文字。上标是文本的一部分。当我添加上标时,只有第一个数字或字符串的第一个元素成为上标的一部分。
这是一个最小的工作示例:
#!/usr/bin/env python3
import matplotlib.pyplot as plt
def main():
fig, axes = plt.subplots()
axes.text(x = 0.5, y = 0.5,
verticalalignment = 'center',
horizontalalignment = 'center',
fontsize = 40,
s = r'$^{}${}'.format(12, 'C'))
#s = r'$^{}${}'.format('aaaa', '123'))
plt.show()
if __name__ == '__main__':
main()
这会产生(也显示被注释掉的行的结果):
在第一张图片中,我原本预计上标为12而不是1.在第二张图片中,我原本期望上标为" aaaa",而不是" a&# 34。
为什么上标中没有显示所有的值/元素?我真诚地希望这个问题没有一个简单的答案......