zzong2019 发表于 2020-10-25 19:54:42

使用pyecharts进行数据可视化无法生成数据

本帖最后由 zzong2019 于 2020-10-30 20:25 编辑

现有一组浙江省内明康汇门店的销售数据,使用pyecharts对每个月各个城市门店的销售业绩进行可视化展现,Excel表样如下所示(Excel文档详见附件):
      省份(直辖市)      城市      门店      销售额      月度
0      浙江省      杭州市      闸弄口      3210      2020-05
1      浙江省      杭州市      草庄                8004      2020-05
2      浙江省      杭州市      滨康路      8654      2020-05
...   ...             ...            ...            ...      ...
22      浙江省      绍兴市      诸暨                3013      2020-08
23      浙江省      绍兴市      新昌                3386      2020-08
24      浙江省      绍兴市      上虞                8401      2020-08
我的代码实现如下:
from pyecharts import options as opts #对图表进行参数配置
from pyecharts.charts import Bar,Timeline #引入柱状图
from pyecharts.globals import ThemeType #从全局变量中引入配色主题
import pandas as pd

data=pd.read_excel(r'D:\python学习\网易微专业数据分析课程\python数据分析基础\2020年5-8月浙江省内明康汇门店销售数据2.xls')
tl = Timeline() #建立时间序列
count=0
for i in data['月度'].unique():
    bar=Bar(init_opts=opts.InitOpts(theme=ThemeType.ESSOS,height='1080px',width='1920px')) #创建柱形图实例
    city_list=data.loc==i]['城市'].unique().tolist() #获取城市列表
    print('城市列表:{}'.format(city_list))

    for j in city_list:
      print(j)

      count+=1
      city_data = data.loc[(data['月度'] == i) & (data['城市'] == j)] #得到一个城市当月所有门店的销售数据(dataframe)
      print(city_data)
      stores_data=city_data[['门店','销售额']].values #将一个城市所有门店的销售数据提取出来(ndarray数组)
      for k in stores_data:
            list1=[]
            list1.append(k) #将某门店的销售额添加到一个列表
            bar.add_xaxis(j) #使用当前城市名称作为x轴数据
            bar.add_yaxis(k,list1,stack='stack'+str(count)) #使用门店名称作为标签,销售额作为数值写入柱形图y轴,同一个城市的所有门店业绩堆叠在一个柱形图上
    bar.set_global_opts(title_opts=opts.TitleOpts("明康汇门店{}月营业额".format(i))) #将图表标题设置为明康汇某月销售业绩
    tl.add(bar, "{}月".format(i)) #为图表添加时间线
tl.render("timeline_multi_axis.html") #渲染生成一个名为timeline_multi_axis的HTML文档
但是运行之后每个月度各个城市的数据没有在x轴上生成正确的标签(详见附件图片),请各位大佬帮忙查找原因,并给出修改建议,谢谢啦~

bonst 发表于 2020-10-28 19:30:22

好像数据格式问题
页: [1]
查看完整版本: 使用pyecharts进行数据可视化无法生成数据