我想减少一个数字的小数,但保留它的功效,以在 Matplotlib 图例中显示它。
例如:8.959976109870809e-10
-> 8.95998e-10
目前我想修改的代码是:plt.plot(x, y, label = f"a{i}={slope};b{i}={intercept}")
(斜率和截距是线性回归的参数)
有什么办法吗? 谢谢!
答案 0 :(得分:3)
使用字符串格式来确定您的数字的精度,然后您可以简单地将此格式化的字符串添加到您的绘图标签中
formatted = '{:.5e}'.format(8.959976109870809e-10)
或者,使用 f 字符串
num = 8.959976109870809e-10
formatted = f'{num:.5e}'
答案 1 :(得分:0)
将您的数字转换为字符串然后使用十进制,这是示例
from decimal import Decimal
stringNumber = '8.959976109870809e-10'
print('%.5E' % Decimal(stringNumber))
或者你可以这样做
from decimal import Decimal
print('%.5E' % Decimal(str(8.959976109870809e-10)))
<块引用>
输出:8.95998E-10