如何在Matplotlib图表中添加平方符号(将R²的2设为上标)
解决Matplotlib中R²上标的问题
嘿,这个小需求很好解决!Matplotlib内置支持TeX风格的数学表达式,刚好能帮你把R后面的2变成上标,具体操作看下面:
- 核心原理:把需要设置上标的文本用美元符号
$包裹,用上标符号^标记上标内容,也就是写成$R^2$,Matplotlib会自动渲染成上标格式。 - 修改你的代码:只需要把
plt.text里的字符串部分调整一下就行,原来的"R2 score EO: {:0.2f}"替换为"$R^2$ score EO: {:0.2f}"。
修改后的完整代码如下:
import matplotlib.pyplot as plt import numpy as np # 假设r2_train_EO是你已经计算好的R²值 r2_train_EO = 0.95 # 示例值 plt.figure() plt.plot(y_train1, y_train_pred, '.', color='darkviolet', alpha=1, marker='o', markersize=2, markeredgecolor='black', markeredgewidth=0.1) plt.plot(np.array((-0.1,7)), np.array((-0.1,7)), '-', color='magenta') plt.xlabel('True') plt.ylabel('Predicted') plt.title('Train') plt.text(5, 1, "$R^2$ score EO: {:0.2f}".format(r2_train_EO), style='italic') plt.show() # 记得加上这个显示图表哦
- 额外提示:如果你的环境里TeX渲染不生效,可以手动开启TeX支持,在代码开头加上一行:
plt.rcParams['text.usetex'] = True
不过大部分情况下默认配置就足够渲染这个简单的上标啦。
内容的提问来源于stack exchange,提问作者Gabriele Valvo
相关产品推荐
相关产品推荐

