matplotlib表中的浮点格式

时间:2018-12-14 19:53:23

标签: python-3.x pandas matplotlib

给出一个熊猫数据框,我正在尝试使用以下代码将其转换为表格:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

data = {"Name": ["John", "Leonardo", "Chris", "Linda"],
    "Location" : ["New York", "Florence", "Athens", "London"],
    "Age" : [41, 33, 53, 22],
    "Km": [1023,2312,1852,1345]}

df = pd.DataFrame(data)

fig, ax = plt.subplots()
ax.axis('off')
ax.set_title("Table", fontsize=16, weight='bold')
table = ax.table(cellText=df.values,
             bbox=[0, 0, 1.5, 1],
             cellLoc='center',
             colLabels=df.columns)

它有效。但是,我可以弄清楚如何将数字的格式设置为{:,.2f},即用逗号作为千位分隔符和两位小数。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

在创建df之后插入以下两行代码,其余代码可按需工作。

AgeKm列定义为类型int;在使用float之前将它们转换为str.format

df.update(df[['Age', 'Km']].astype(float))

现在在这两列上使用DataFrame.applymap(str.format)

df.update(df[['Age', 'Km']].applymap('{:,.2f}'.format))