在pygal中正确格式化数字

Properly formatting numbers in pygal

我使用 Pygal(使用 Python / Flask)在加载数据、格式化颜色、min/max 等方面相对成功,但可以' 找出如何使用美元符号和逗号格式化 Pygal 中的数字。

我得到 265763.557372895 而不是想要 265,763 美元。

这适用于悬停在数据点上时的弹出框以及 y 轴。

我查看了 pygal.org 的文档,但无济于事。有谁知道如何正确格式化这些数字?

更新:

我还没有准备好标记这个问题 "answered",因为我仍然无法得到分隔逗号。但是,我确实在 pygal 中找到了以下原生格式化选项。这消除了尾随小数(不使用 Python 的 int())并添加了一个美元符号:

graph.value_formatter = lambda y: "$%.0f" % y

如果您喜欢两位小数等,请将 0f 更改为 2f

graph.value_formatter = lambda y: "{:,}".format(y) 会给你逗号。

graph.value_formatter = lambda y: "${:,}".format(y) 会给你逗号和美元符号。 请注意,此格式似乎对 Python 2.7 有效,但不适用于 2.6.