如何为给定DataFrame绘制X轴为国家、Y轴为金额的直方图
完全可以实现,不过这里需要先明确一个概念:你需要的可视化类型是分类柱状图,直方图一般用于展示连续数值的频率分布,并不适配当前「分类国家作为X轴、单值金额作为Y轴」的展示需求。
以下是基于Python pandas + matplotlib的可运行实现示例:
import pandas as pd import matplotlib.pyplot as plt # 构造示例DataFrame,你也可以直接读取自己的数据源 df = pd.DataFrame({ 'country_code': ['USA', 'CHN', 'GBR', 'IND', 'CAN'], '($) millions': [181519.23, 18507.58, 11342.63, 6064.06, 4597.90] }) # 绘制可视化图 plt.figure(figsize=(10, 6)) # 绘制柱状图,X轴为国家代码,Y轴为金额 plt.bar(df['country_code'], df['($) millions'], color='steelblue') # 配置轴标签与标题 plt.xlabel('国家代码') plt.ylabel('金额(百万美元)') plt.title('各国对应金额统计') # 可选:在柱子上方标注具体数值 for idx, val in enumerate(df['($) millions']): plt.text(idx, val + 1500, f'{val:.2f}', ha='center') plt.tight_layout() plt.show()
运行代码后即可得到符合需求的图表,X轴展示国家代码,Y轴展示对应的百万美元金额,也可根据需要调整柱子颜色、图表尺寸、刻度样式等参数。
内容的提问来源于stack exchange,提问作者Deepak Gahlot
相关产品推荐
相关产品推荐

