python数据分析案例与中文编码问题,附测试文件

ttc文件为字体文件,路径在 C:\Windows\Fonts 下。
import pandas as pd
import matplotlib.pyplot as plt
import matplotlib.font_manager as font_manager

# 这是中文字体编码
font_path = 'D:\\pythonProject1\\venv\\datahome\\simsun.ttc'
font_prop = font_manager.FontProperties(fname=font_path)
plt.rcParams['font.family'] = font_prop.get_name()
plt.rcParams['font.size'] = 12

# 读取数据
df = pd.read_csv("D:\\pythonProject1\\venv\\datahome\\pandas_exercise\\exercise_data\\chipotle.tsv", sep='\t')
df = df.rename(columns={"order_id": "订单编号", "quantity": "订单数量", "item_name": "产品名称", "choice_description": "产品描述", "item_price": "产品售价"})  # 修改列标签
df = df.dropna()        # 读取数据,丢弃缺失值(NaN)
# print(df['产品名称'])

data = df['产品名称'].values.tolist()   # 将表中‘产品名称’这一列转换为list格式
count_dict = {}
for i in data:  # 统计各商品售卖的次数,记录为字典格式
    count_dict[i] = data.count(i)
# print(count_dict)
# print(type(count_dict.items()))

# 将字典转换为DataFrame格式,list(count_dict.items()) 将字典的items设置成列表,这是表单的值。index为索引,从1开始递增。columns为列标签
my_df = pd.DataFrame(list(count_dict.items()), index=range(1, len(count_dict) + 1), columns=["订单名称", "数量"])

# my_df = my_df.set_index()
print(my_df)
plt.figure(dpi=300, figsize=(24, 16))   # 创建画布,dpi设置图标的清晰度,figsize为设置图标的比例
plt.xticks(fontsize=10)     # 设置x轴的字体大小
# plt.xlim(0, 1000, 20)
plt.title("各商品订单数统计")   # 设置标题
plt.xlabel("订单数量", fontsize=30)     # x轴标签
plt.ylabel("订单名称", fontsize=30)     # y轴标签
plt.barh(my_df["订单名称"], my_df["数量"])    # barh为绘制横向柱状图
plt.savefig("./image/chipltle.png")     # 保存为图片
plt.show()      # 查看

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值