当舍入失败时,如何将图例显示到小数点后零位?

问题描述 投票:0回答:1

我无法创建可复制的MWE-此快照显示了我遇到问题的输出。

python output showing round returning unwanted decimal place

我想据此为图例(matplotlib)创建标签,但我需要它的小数位数为零。有没有更可靠的round形式,您可以在其中强制使用零小数位?或者,还有其他方法可以使它正常工作吗?我不想手动创建列表,因为我正在绘制的值以及构成它们的函数将发生变化。

我确实尝试分配plot_R(thetaValues[40])*1e6的输出,然后将其取整,但这也不起作用。我还尝试两次调用round以防万一。有趣的是,它四舍五入到小数点后0位(如果四舍五入到1,输出为160.3),它仍然在打印“ .0”

python python-3.x rounding
1个回答
0
投票

如果要截断小数,可以这样做:

decimal_round = round(plot_R(thetaValues[40])*1e6)
str_decimal = str(decimal_round)
if "." in str_decimal:
    decimal_round = int(str_decimal[:str_decimal.index(".")])

这将找到小数点pt的索引,将字符串表示形式切成小数点并减去小数点后的所有内容,然后重新转换为整数。

希望有帮助,编码愉快!

© www.soinside.com 2019 - 2024. All rights reserved.