引入依赖
import pandas as pd
import matplotlib.pyplot as plt
显示中文和负号
plt.rcParams["font.sans-serif"] = ["SimHei"]
plt.rcParams['font.size'] = 10
数据预处理
lipstick = pd.read_csv('./lipstick_v2.csv', encoding='UTF8')
data = lipstick[lipstick['shop'] == '阿玛尼美妆官方旗舰店']
data.loc[:, 'aggregateName'] = data['title'].str[-7:]
# data.loc[:, 'productName'] = (data['title'].str.replace('【正品】', '').str.replace('正品', '').str.replace('\n口红\n', '').str.replace('阿玛尼', '').str.replace(' ', ''))
data['productName'] = [s.split("唇")[0] if '唇' in s else s for s in data['title'].str.replace('【正品】', '')
.str.replace('正品', '').str.replace('\n口红\n', '').str.replace('阿玛尼', '')]
# print(data.to_string())
data1 = data.groupby(['aggregateName', 'productName'])['deal'].sum()
aggregate_names = data1.index.get_level_values('aggregateName')
productName = data1.index.get_level_values('productName')
values = data1.values
绘制饼图
plt.figure(figsize=(12, 6))
plt.pie(values,
labels=productName,
explode=[0.05, 0.05, 0.05, 0.05, 0.05],
pctdistance=0.7,
wedgeprops={'width': 0.5}
)
plt.title('2023120800')
plt.show()
效果图
