成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

手把手教你用Pyecharts庫對淘寶數據進行可視化展示

大數據 數據可視化
本文基于一份雜亂的淘寶原始數據,利用正則表達式re庫和Pandas數據處理對數據進行清洗,然后通過stop_word停用詞對得到的文本進行分詞處理,得到較為”干凈“的數據。

[[419561]]

大家好,我是Python進階者。

一、前言

大家好,我是Python進階者。上一篇文章給大家講到了淘寶數據的預處理和詞頻處理,沒有來得及看的小伙伴,記得去學習了下了,詳情戳這里:手把手教你用Pandas庫對淘寶原始數據進行數據處理和分詞處理。這篇文章緊接著上一篇文章處理得到的數據進行可視化處理,一起來看看吧!

二、可視化

可視化部分,我們采用Pyecharts庫來進行完成,這個庫作圖十分的炫酷,而且可以交互,十分帶感,強烈推薦。關于這部分,小編以生成配料圖表和生成保質期可視化圖表為例來進行展開。

1、生成配料餅圖

針對配料數據,我們使用一個餅圖去進行展示,這樣顯得更加高大上一些,直接上代碼。

  1. # 生成配料圖表 
  2. def get_ingredients_html(df): 
  3.     # 詞表分詞 
  4.     names = df.配料表.apply(jieba.lcut).explode() 
  5.     df1 = names[names.apply(len)>1].value_counts() 
  6.     # 寫入分詞后的結果 
  7.     with pd.ExcelWriter("淘寶商品配料數據.xlsx"as writer: 
  8.         df1.to_excel(writer, sheet_name="配料"
  9.     fpath = r'C:\Users\pdcfi\Desktop\淘寶數據分析\淘寶商品配料數據.xlsx' 
  10.     # 讀取數據 提取列 
  11.     df1 = pd.read_excel(fpath, header=None, skiprows=1, sheet_name='配料', names=['sx''sl']) 
  12.     a = df1['sx'].to_list()[:10] 
  13.     b = df1['sl'].to_list()[:10] 
  14.  
  15.     from pyecharts.charts import Pie 
  16.     from pyecharts import options as opts 
  17.     # 繪制可視化圖表 
  18.     pie = ( 
  19.         Pie().add('', [list(z) for z in zip(a, b)], 
  20.                  radius=["20%""60%"],  # 半徑長度 
  21.                  rosetype="radius"  # 扇區圓心角展現數據的百分比,半徑展現數據的大小 
  22.                  ) 
  23.             .set_global_opts(title_opts=opts.TitleOpts(title="淘寶商品數據配料統計", subtitle="8.19")) 
  24.             .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: owocgsc%"))  # 數字項名稱和百分比 
  25.  
  26.     ) 
  27.     pie.render('淘寶商品數據配料統計.html'

在Pycharm里邊運行代碼之后,我們將會得到一個淘寶商品數據配料統計.html文件,雙擊打開該HTML文件,在瀏覽器里邊可以看到效果圖,如下圖所示。

是不是感覺一下子就高大上了呢?而且動動鼠標,你還可以進行交互,是動態圖來著,十分好玩。

2、生成保質期可視化餅圖

針對保質期數據,我們也先使用一個餅圖去進行展示,直接上代碼,其實你會發現和上面那個配料圖表大同小異。

  1. """生成保質期可視化圖表""" 
  2. def get_date_html(df): 
  3.     # 詞表分詞 
  4.     names = df.保質期.apply(jieba.lcut).explode() 
  5.     df1 = names[names.apply(len) > 1].value_counts() 
  6.     # 寫入分詞后的結果 
  7.     with pd.ExcelWriter("淘寶商品保質期數據.xlsx"as writer: 
  8.         df1.to_excel(writer, sheet_name="保質期"
  9.     fpath = r'C:\Users\pdcfi\Desktop\淘寶數據分析\淘寶商品保質期數據.xlsx' 
  10.     # 讀取數據 提取列 
  11.     df1 = pd.read_excel(fpath, header=None, skiprows=1, names=['bzq''rq']) 
  12.     a = df1['bzq'].to_list()[:10] 
  13.     b = df1['rq'].to_list()[:10] 
  14.     from pyecharts.charts import Pie 
  15.     from pyecharts import options as opts 
  16.     # 繪制可視化圖表 
  17.     pie = ( 
  18.         Pie() 
  19.             .add('', [list(z) for z in zip(a, b)], 
  20.                  radius=["20%""60%"],  # 半徑長度 
  21.                  rosetype="radius"  # 扇區圓心角展現數據的百分比,半徑展現數據的大小 
  22.                  ) 
  23.             .set_global_opts(title_opts=opts.TitleOpts(title="淘寶商品保質期可視化圖表", subtitle="8.19")) 
  24.             .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: owocgsc%"))  # 數字項名稱和百分比 
  25.  
  26.     ) 
  27.     pie.render('淘寶商品保質期統計.html'

在Pycharm里邊運行代碼之后,我們將會得到一個淘寶商品保質期統計.html文件,雙擊打開該HTML文件,在瀏覽器里邊可以看到效果圖,如下圖所示。

相信有小伙伴肯定感覺哪里不對,一個保質期的可視化,做成這種餅圖似乎太丑了吧?嗯,的確是丑爆了,所以程序大佬把保質期這個圖轉為了柱狀圖,這樣看上去就高大上很多了。

3、生成保質期可視化柱狀圖

其實數據都是一樣的,只不過呈現方式不同,直接上代碼。

  1. """生成保質期可視化圖表""" 
  2. def get_date_html(df): 
  3.     # 詞表分詞 
  4.     names = df.保質期.apply(jieba.lcut).explode() 
  5.     df1 = names[names.apply(len) > 1].value_counts() 
  6.     # 寫入分詞后的結果 
  7.     with pd.ExcelWriter("淘寶數據.xlsx"as writer: 
  8.         df1.to_excel(writer, sheet_name="保質期"
  9.     fpath = r'C:\Users\dell\Desktop\崔佬\數據分析綜合實戰\淘寶數據.xlsx' 
  10.     # 讀取數據 提取列 
  11.     df1 = pd.read_excel(fpath, header=None, skiprows=1, names=['bzq''rq']) 
  12.     a = df1['bzq'].to_list()[:50] 
  13.     b = df1['rq'].to_list()[:50] 
  14.  
  15.     bar = ( 
  16.         Bar(init_opts=opts.InitOpts(theme=ThemeType.CHALK)) 
  17.             .add_xaxis(a) 
  18.             .add_yaxis("保質期(天數)",b) 
  19.             .set_global_opts( 
  20.                 title_opts=opts.TitleOpts(title="Bar-DataZoom(slider-保質期)"), 
  21.             datazoom_opts=opts.DataZoomOpts(), 
  22.         ) 
  23.  
  24.     ) 
  25.     return bar 

這么處理之后,我們就會得到一個柱狀圖了,如下圖所示。

這把看上去,是不是覺得清晰很多了呢?

不過呢,程序大佬還覺得不夠,想把這兩張圖放到一起,這應該怎么辦呢?

4、合并餅圖和柱狀圖到一個HTML文件

其實這個也并不難,只需要將生成兩個圖的函數放到一個布局類里邊就可以完成了,直接上代碼。

  1. def page_draggable_layout(df): 
  2.     page = Page(layout=Page.DraggablePageLayout) 
  3.     page.add
  4.         get_ingredients_html(df), 
  5.         get_date_html(df) 
  6.     ) 
  7.     page.render("page_draggable_layout.html"

如果你想在一個HTML文件里邊加入更多的圖,只需要繼續在add()函數里面進行添加生成可視化圖的函數即可。話不多說,直接上效果圖。

從上圖我們可以看到配料餅圖和保質期柱狀圖都同時在同一個HTML文件出現了,而且也是可以進行點擊交互的噢!我們還可以收到拖拽,讓圖表移動,如下圖所示,分為左右圖進行展示。

你以為到這里就結束了?其實并沒有,程序大佬還想玩點更加高大上的,他想把table表一并顯示出來,這樣顯得更加飽滿一些。那么table表又如何來進行顯示呢?

5、table表加持

其實在這里,程序大佬卡了一下,他在群里問,基于他目前的數據,像下圖這樣的df數據如何進行展示出來。

而且,他自己在不斷的嘗試中,始終報錯,一時間丈二和尚摸不著頭腦,不知如何是好。

不過此時小小明大佬,又遞來了橄欖枝,人狠話不多,直接丟了兩行代碼,讓人拍手叫絕。

然后程序大佬,拿到Pycharm中一跑,啪,成了,真是拍案叫絕,小小明yyds!那么呈現的效果圖是下面這樣的。

這樣看上去還稍微不太好看,拖拽下,調整下格式看看,如下圖所示。

但是這樣一看,確實高大上了一些,不過還是達不到程序大佬心里的預期,于是乎他繼續折騰。

6、調整圖像背景色

現在呢,程序大佬又想要加點背景色,這樣顯得高大上一些,代碼如下。

  1. # 繪制可視化圖表 
  2. pie = ( 
  3.     Pie(init_opts=opts.InitOpts(theme=ThemeType.CHALK)) 
  4.         .add('', [list(z) for z in zip(a, b)], 
  5.              radius=["20%""60%"],  # 半徑長度 
  6.              rosetype="radius"  # 扇區圓心角展現數據的百分比,半徑展現數據的大小 
  7.              ) 
  8.         .set_global_opts(title_opts=opts.TitleOpts(title="配料統計", subtitle="8.19")) 
  9.         .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: owocgsc%"))  # 數字項名稱和百分比 
  10.  
  11. return pie 

其實核心的那句代碼下面這個,引入了一個主題:

  1. init_opts=opts.InitOpts(theme=ThemeType.CHALK) 

得到的效果圖如上圖所示了。

7、添加漏斗圖

這里是以數據里邊的”食品添加“列來做實例的,代碼如下所示。

  1. def get_sptj_data(df): 
  2.     # 詞表分詞 
  3.     names = df.食品添加劑.apply(jieba.lcut).explode() 
  4.     df1 = names[names.apply(len) > 1].value_counts() 
  5.     # 寫入分詞后的結果 
  6.     with pd.ExcelWriter("淘寶數據.xlsx"as writer: 
  7.         df1.to_excel(writer, sheet_name="食品添加劑"
  8.     fpath = r'C:\Users\dell\Desktop\崔佬\數據分析綜合實戰\淘寶數據.xlsx' 
  9.     # 讀取數據 提取列 
  10.     df1 = pd.read_excel(fpath, header=None, skiprows=1, names=['sptj''sj']) 
  11.     a = df1['sptj'].to_list()[:10] 
  12.     b = df1['sj'].to_list()[:10] 
  13.     c = ( 
  14.         Funnel(init_opts=opts.InitOpts(theme=ThemeType.CHALK)) 
  15.             .add
  16.             "商品"
  17.             [list(z) for z in zip(a, b)], 
  18.             label_opts=opts.LabelOpts(position="inside"), 
  19.         ) 
  20.             .set_global_opts(title_opts=opts.TitleOpts(title="Funnel-Label(food_add)")) 
  21.     ) 
  22.     return c 

得到的效果圖如下圖所示。

寫到這里,基本上快接近尾聲了,不過程序大佬為了感謝小小明大佬,后來又補充了一個極化裝逼圖來贊揚小小明。

8、極化圖

直接上代碼,程序大佬取的這個zb函數,就是裝13的意思,取的太沒有水平了。

  1. def zb_data(): 
  2.     data = [(i, random.randint(1, 100)) for i in range(10)] 
  3.     c = ( 
  4.         Polar() 
  5.         .add
  6.             ""
  7.             data, 
  8.             type_="effectScatter"
  9.             effect_opts=opts.EffectOpts(scale=10, period=5), 
  10.             label_opts=opts.LabelOpts(is_show=False), 
  11.         ) 
  12.         .set_global_opts(title_opts=opts.TitleOpts(title="Polar-沒啥用,用來裝逼,小小明yyds")) 
  13.  
  14.     ) 
  15.     return c 

看上去確實很高大上呢。

三、總結

大家好,我是Python進階者。本文基于一份雜亂的淘寶原始數據,利用正則表達式re庫和Pandas數據處理對數據進行清洗,然后通過stop_word停用詞對得到的文本進行分詞處理,得到較為”干凈“的數據,之后利用傳統方法和Pandas優化處理兩種方式對數據進行詞頻統計,針對得到的數據,利用Pyecharts庫,進行多重可視化處理,包括但不限于餅圖、柱狀圖、Table表、漏斗圖、極化圖等,通過一系列的改進和優化,一步步達到想要的效果,可以說是干貨滿滿,實操性強,親測有效。

【編輯推薦】

責任編輯:姜華 來源: Python爬蟲與數據挖掘
相關推薦

2020-12-17 09:40:01

Matplotlib數據可視化命令

2021-07-14 09:00:36

Python數據Python基礎

2022-07-24 21:43:48

數據可視化大數據

2021-08-09 13:31:25

PythonExcel代碼

2022-10-19 14:30:59

2021-05-10 06:48:11

Python騰訊招聘

2020-03-08 22:06:16

Python數據IP

2011-03-28 16:14:38

jQuery

2021-02-06 14:55:05

大數據pandas數據分析

2021-02-04 09:00:57

SQLDjango原生

2022-08-04 10:39:23

Jenkins集成CD

2023-02-01 10:16:50

Python可視化

2009-04-22 09:17:19

LINQSQL基礎

2021-01-21 09:10:29

ECharts柱狀圖大數據

2021-01-08 10:32:24

Charts折線圖數據可視化

2012-01-11 13:40:35

移動應用云服務

2021-08-02 23:15:20

Pandas數據采集

2021-12-11 20:20:19

Python算法線性

2021-02-02 13:31:35

Pycharm系統技巧Python

2020-11-08 14:13:31

Python帕累托分析開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品毛片 | 亚洲毛片一区二区 | 精品国产乱码久久久久久影片 | 天天操妹子 | 亚洲国产免费 | 国产区精品 | 在线观看视频一区 | 一级黄色片网址 | 亚洲精品视频在线 | 国产精品久久久久久久久久免费看 | 成人午夜免费福利视频 | 2019中文字幕视频 | 久久久久国产精品午夜一区 | 日本亚洲欧美 | 99久久精品免费看国产高清 | 久久免费精品 | 国产在线精品一区 | 国产传媒在线观看 | 欧美激情国产日韩精品一区18 | 午夜精品一区二区三区在线播放 | 国产美女高潮 | 精品一区二区三区四区 | 国产精品成人一区二区 | 天天干.com | 欧美日韩久久久 | 日本精品在线播放 | 国产精品久久久久久久久久 | 亚洲在线中文字幕 | 欧美日韩在线视频一区 | 中文字幕日韩欧美 | 久久成人精品视频 | 亚洲成网 | 久久久久九九九九 | 久久国产精品视频 | 中文字幕在线观看一区二区 | 狠狠av| 天天爽综合网 | 99久久精品国产毛片 | 第一色在线| 美人の美乳で授乳プレイ | 久久夜夜|